Uploaded by sai ma

Algorithmic trading system design and applications

advertisement
 Feng WANG1 , Keren DONG2 , Xiaotie DENG
2
1 State Key Lab of Software Engineering, Wuhan University, Wuhan 430072, China
2 Department of Computer Science, City University of Hong Kong, Kowloon, Hong Kong, China
c
Higher Education Press and Springer-Verlag 2009
Abstract This paper provides an overview of research and
development in algorithmic trading and discusses key issues
involved in the current effort on its improvement, which
would be of great value to traders and investors. Some
current systems for algorithmic trading are introduced, together with some illustrations of their functionalities. We
then present our platform named FiSim and discuss its overall design as well as some experimental results in user strategy comparisons.
Keywords algorithmic trading, portfolio optimization,
news retrieval, decision making, system design
includes identification of investment opportunities (what to
trade) and execution of orders for a variety of asset classes
(when, how, and where to trade). Fig. 1 shows the main
elements in such trading processes.
As shown in Fig. 1, there are four steps in the trading strategy generation process. The first step includes analysis of
market data as well as relevant external news. The analysis
is often supported by computer tools such as spreadsheets or
charts, which is very important to generate a trading signal
and make a trading strategy. The trading model and decision
making are the kernel of AT. The last step of the process is
the execution of the trading strategy, which can be done automatically by computer.
The financial sector has been the one that embraces the advent of information and communication technology without
a minute of hesitation. Advantages in collecting information, making decisions, and executing trade strategies turn
into profits in investors’ hands as quickly as one does it faster
than the competitors. The emergence of the Internet has sped
up the trend in the financial market industry in its increased
automation of trading, now commonly referred to as algorithmic trading (AT).
In general, algorithmic trading can be described as some
elements in financial decision making and financial investment being executed by an algorithm through computers
and communication networks in an electronic way [1]. The
algorithms are involved in predefined trading strategies or
adaptive strategies generated through artificial intelligence
methodologies. Trading strategies are automated by defining a sequence of instructions executed by a computer, which
Received November 11, 2008; accepted April 2, 2009
E-mail: fengwang@whu.edu.cn, {keredong, csdeng}@cityu.edu.hk
Fig. 1
Algorithmic trading process
As the development of information technology, expansions
of financial markets in both its depth and width, structures
236
Feng WANG, et al. Algorithmic trading system: design and applications
resulting from relaxation in regulatory environment and creation of new markets, and economic landscape changes continue to speed up financial transaction, investors constantly
look into ways to reduce transaction costs, increase efficiency, enhance risk control, and utilize information and
technology to make decisions one step ahead of competitors and markets. Algorithmic trading provides traders with
the tools to achieve those objectives, through improvement
in several frontiers.
2.1 Decision-making strategies
Algorithmic trading is a computer-supported financial investment platform for active traders to actively look at the
price movement for profitable opportunities, typically of
short-term profits. Under the AT model, it is important to
evaluate the price dynamics and decide on the amount, trading time, and various parameters related to the trading process. The kernel of AT can be thought of as “package of
strategies”, individually conceived and customized to help
traders to model their financial objectives and execute transaction plans, with the flexibility to revise strategies swiftly.
The automated process allows traders to take on a greater
volume of transactions with more efficiency and less chance
of shortfall. Effectiveness is the right word to describe an
AT system since it can minimize execution shortfall, which
is the difference between the execution plan and the actual
execution results.
The choice of kernel, i.e., the decision on which trading
algorithm to use, depends on users’ specific investment objectives as well as their styles of market operations. For example, what weight should be given to factors like minimizing transaction costs, venue restrictions, risk management,
and information leakage? Would they prefer to make speedy
execution, paying no regard to the impact on price levels, or
other way around?
In a recent report published by AMD, five categories of
the current trading models in AT were presented [2]. They
are price algorithm, time algorithm, implementation shortfall algorithm, volume participation algorithm, and smart order routing algorithm. It was reported that the most popular algorithmic strategies are volume-weighted average price
(VWAP), time-weighted average price (TWAP), stock index
future arbitrage, and statistical arbitrage.
(1) VWAP
VWAP is defined as the ratio of the dollar transaction volume to share volume over the trading horizon. It is common to evaluate the performance of traders by their ability
to execute orders at prices better than the volume-weighted
average price (VWAP) over the trading horizon. Berkowitz,
Logue, and Noser [3] regard the VWAP benchmark as a good
approximation of the price for a passive trader. Its computational simplicity is a major advantage, especially in markets
where detailed trade level data are difficult or expensive to
obtain.
(2) TWAP
TWAP is the average price of contracts or shares over
a specified time, which attempts to execute an order and
achieve the time-weighted average price or better. Highvolume traders use TWAP to execute their orders over a
specific time, so they trade to keep the price close to that
which reflects the true market price. TWAP is different from
VWAP in that orders are a strategy of executing trades evenly
over a specified time period.
(3) Stock index future arbitrage
Actually, arbitrage is one of the most important actions in
AT. In stock index future market, it employs the mis-pricing
between the future market and the spot market and makes
strategies, such as short sells, to make risk-free profits [4].
(4) Statistical arbitrage
Statistical arbitrage is based on the mis-pricing of one
or more assets in their expected values. Arbitrage can be
viewed as a special type of statistical arbitrage. One major
distinction is that a statistical arbitrage is not always riskless.
Hogan et al. have proposed a yield curve method to determine whether there exists a statistical arbitrage opportunity
in the market [5, 6]. A yield curve is a graphic representation of market value (yield) for a security plotted against
the maturity of the security. They applied a trading strategy
to valuate the profits generated based on the standard yield
curves.
Some other trading strategies, such as iceberging, guerrilla, benchmarking, sniper, and sniffer are also widely used
in the real market. However, it has been observed that few
strategies outperform the benchmark indices in the long run.
Data mining has to be applied to constantly seek profitable
insights in active investment strategies.
2.2 Real-time and historical data feed
A powerful data source is a very important component for
an AT system [7]. The data usually consist of market trading data and the news data. Historical data are used to train
the trading models, while the current data are used to preanalyze the trade strategies. Data capture and retrieval have
been the key problem in the data feed package.
News data retrieval is a challenge issue in AT. First, the
news information captured from the Internet must be analyzed in a very short time. It involves in many methodolo-
Front. Comput. Sci. China 2009, 3(2): 235–246
gies from natural language processing, pattern recognition,
and machine learning, such as neural network, SVM, and
evolutionary algorithms.
On another hand, Bloomberg and Reuters provide and
promote the use of organized financial data and financially
related news data for financial decision analyses. They are
becoming more and more important for AT practice.
2.3 Order management
In general, there are two types of orders: limit orders and
market orders. A limit order specifies the side of the transactions, i.e., whether it’s a buy or a sell, the quantity, and the
price. It constitutes a firm commitment to take the specified
side in a trade. Limit orders can be canceled at any time,
as long as they have not been matched by an order of the
opposite side. Market orders do not specify a price but just
state the side and the quantity. They are filled immediately
from the limit order book at the price most favorable for the
market order submitting party. Gradually, more and more
firms use order management systems (OMSs) in their trading. The automated software systems for this purpose make
the desired transactions executed in a timely fashion.
2.4 Risk management
With AT tools, traders can improve their risk management
by monitoring market changes and make speedy transitions
in their market positions. At the same time, they may also
reduce their market exposure caused by market impact and
timing delay of their investment decisions. Their automated
strategies result in better management of execution shortfall
with liquid and easier-to-trade orders. The AT system also
allows risk analysis methodologies to be applied to study
market trends and news alerts, so that a quick response can
automatically execute transactions to reduce the risk that an
investor may be exposed in any emergence event.
2.5 Agent-based computational models
An agent-based model is a model comprising autonomous
agents placed in an interactive environment (society) or social network which is widely used in the AT modeling [8–
10]. Simulating the model via computers is probably the
most practical way to visualize economic dynamics.
Agent-based model is very popular in AT system design
and is easy to be understood to simulate the market behaviors. Blake LeBaron gave a review of early research of using computer program to simulate finance market (simple
agent, zero intelligence traders, foreign exchange markets
and experiments, costly information and learning, and neu1
2
237
ral network- based agents) [11]. Aki-Hiro Sato proposed a
simple agent-based model in which N market participants
exchange M currency pairs and analyze the frequency of tick
quotes of foreign exchange market [12].
In recent years, more and more researchers began to
employ soft computing methodologies into the agent-based
trading modeling, such as Genetic Programming and Genetic
Algorithms [13–15]. Chen et al. used genetic programming
to simulate the human behaviors of the traders in the market
and studied four fundamental issues of GP in agent-based
economic modeling: primitives, grammar, genetic operators,
and architecture [16]. Christopher and his collaborators also
used GP to forecast out-of-sample daily volatility in the foreign exchange market [17].
2.6 System design and integration
The biggest changes of equity market have occurred in alternative trading systems during the last decade. Alternative trading systems (ATSs) are nontraditional, computerized trading systems that compete with or supplement
dealer markets and traditional exchanges. These trading systems facilitate the exchange of millions of shares every day
through electronic means. The most well-known ATSs are
the electronic communication networks (ECNs) and the electronic crossing systems (ECSs). Both have heavily relied on
electricity technology for information and communication
[18, 19].
Reuters also provides the low latency and reference information, high performance technology, and community support that helps the buy-side or sell-side make more competitive algorithms for investment decisions1 . The news data information feed package offered by Reuters Market Data System capture, store, and analyze ever-increasing volumes of
market data. Through the powerful data feed package (real
time and not only market data but news data), enhanced with
algorithmic analytic tools, it can help to access the market
with efficient order execution and operate the models close
to the trading venue.
Bloomberg has proposed a trading platform that targets
an average execution benchmarked to the VWAP throughout
the day or for a defined time period2. The execution module
employs statistical theoretical values, which maximize the
probability of spread capture within the given constraints.
The orders, during the execution period, can be updated or
canceled by the traders.
MetaTrader, which is developed by MetaQuotes Software
Corp and designed to provide broker services to customers
at forex, futures, and CFD markets, is an online trading com-
http://about.reuters.com/productinfo/algorithmic trading/
http://www.bloomberg.com/apps/news?pid=20601109&refer=home&sid=amK25dKbMrhQ
238
Feng WANG, et al. Algorithmic trading system: design and applications
Fig. 2 Interface of the algorithmic trading via Bloomberg
plex. It defines a language designed specially for describing trading strategies, called MetaQuotes Language (MQL)3 .
MetaTrader has the advantage of being well admitted in industry: most forex brokers employ it as the main client application. Strategies written in MQL can be shared in different
broker applications without modifications. It also has an online community3 that provides documentation of MQL and
sample codes. Users are encouraged to upload their own
code and share with each other, so it is possible to learn
strategies from others in the community. Strategies written
using MQL can be tested on history data by MetaTrader, and
detailed reports will be generated after testing. Logging utility is also provided to help in debugging the strategies. Like
Great Wisdom, MetaTrader lacks the ability to generate new
strategies automatically; it is designed only for executing existing strategies.
Artificial Stock Market, developed by the Santa Fe Institute in New Mexico, is another well-known system for
AT [20, 21]. It consists of a central computational market
Fig. 3
3
http://www.mql4.com, MQL 4 Community
and a number of artificially intelligent agents. The agents
choose between investing in a stock and leaving their money
in the bank, which pays a fixed interest rate. The stock pays a
stochastic dividend and has a price that fluctuates according
to agent demand. The agents make their investment decisions by attempting to forecast future returns on the stock,
using genetic algorithms to generate, test, and evolve predictive rules. The artificial market exhibits two distinct regimens of behavior, depending on parameter settings and initial conditions. These behaviors can help to analyze the market trend and help traders to make corresponding strategies.
Fig. 4 and Fig. 5 show the wealth of the 30 agents and their
relative positions in the whole market after 2000 evolving
generations.
In China, there are also some AT components that have
been developed and employed widely by the broker-dealers
and hedge funds. The trading system called New Generation
Trading System (NGTS) is developed by the Shanghai Stock
Exchange; it is a kind of ECN [22, 23]. Its protocol used
Interface of the algorithmic trading via MetaTrader
Front. Comput. Sci. China 2009, 3(2): 235–246
Fig. 4 Relative wealth of agents after 2000 evolving generations
Fig. 6
239
Fig. 5 The position of each agent in the population
Interface of the algorithmic trading via Great Wisdom
to exchange trading data, which is named STEP, is national
standard and is compatible with the most popular international financial data exchange protocol, FIX 4.4. As a result
of using standard data exchange protocol, it is possible to
develop our own client to collect data and test trading strategies. In fact, most of the analysis software provided for brokers in China is based on a third-party platform named Great
Wisdom. Fig. 6 shows the algorithmic trading interface
of Great Wisdom. Great Wisdom is an integrated system
that provides much practical functionality. The basic functionalities include showing real-time stock data, displaying
technical indicators, and providing related financial information. Most common technical indicators are provided by
Great Wisdom by default, such as MACD, DMI, DMA, etc.
Great Wisdom presents a workable demonstration for executing and testing the strategies like other equity platforms
but still lacks the ability to generate new strategies automatically, which will be the most important feature of our project.
ate sophisticated algorithms, we need more granular information such as tick level data including actual market sizes.
Due to the lack of data provided by the trading venues, banks
as well as external algorithmic traders will have to invest in
collecting a comprehensive data set and learn from experience by employing new models in the real market at an early
stage.
3.2 Order processing
The most granular CLOB design dedicates a single system
process to a single, individual security or series. A recent
study at a major U.S. futures exchange found that 60% of
all trading for the exchange was done in the near-month of
a single financial futures contract. A similar measurement
of the market opening at a U.S. regional equities exchange
pointed out that 70% of all trades were in the three most active stocks. Thus, the system processing power and software
efficiencies need to focus on the busiest instrument.
3.3 Slippage measurement
3.1 Lack of data
Many researchers are concerned about the lack of data from
some trading venues. However, even if sufficient historical
data are currently available and strong enough, they might
not build diversified order execution and algorithms. To cre-
Slippage occurs for stop orders when prices move before
the broker-dealer is able to fill the order at the stop price.
The costs of slippage are difficult to measure. First, different
equities have different slippage for different broker-dealers.
Second, the slippage is correlated with the trade volume of
the equity. When an order is placed, it is unusual to find any
record of what the target execution price was relative to the
execution received.
240
Feng WANG, et al. Algorithmic trading system: design and applications
4.1 FiSim overview
FiSim is designed to be a financial simulation platform that
is flexible and extensible enough to support analyzing strategies against various kinds of equities, currencies, futures,
and other financial products. The system is composed of two
sub-parts: one is used to collect data from either history or
real time and run a market simulator using the data; another
monitors financial news and performs automatic ranking using specified algorithms. This FiSim platform is expected to
implement the following features.
(1) Automation of simulation configuration
The simulator can load the simulation parameters from a
file automated and then start a simulation. It can also save
the parameters to a file for the next usage. The parameters
include the start date, end date, and so on.
(2) Automation of data package
The simulator can load and parse the data source from a
file automated.
(3) Simulation of the work of an investor and its assistants
The work includes the analysis of the data, the choice of
stock and the decision of whether to sell or buy, the decision of the quantity to trade, the submission of order, and the
updates and statistic of its wealth.
(4) Simulation of the work of a broker to carry out the
transaction. Fig. 7 shows the architecture of FiSim
Fig. 8
Fig. 7
Architecture of the simulation platform FiSim
4.2 Detailed design of FiSim
4.2.1 Market simulator
We use 7 classes to model the market simulator. An abstract
data model is defined for simulating the financial market in
the real world, and the structure is shown in Fig. 8:
The usages of the classes are:
(1) Platform – This class assembles the underlying components and provides external APIs for the end user. It loads
concrete financial data and translates it to an internal model;
in this way, it is extensible to different data formats. After
initialization, it will start the simulated market.
The data model of market simulator
Front. Comput. Sci. China 2009, 3(2): 235–246
(2) Market – This interface defines the contract for simulated markets. A simulated market is supposed to be able to
provide financial data like equities, currencies, futures, etc.
for brokers registered in the market. Provision of data is
continuous during the market’s lifetime. Matching orders is
done by concrete brokers in this platform; the market does
not do this job.
(3) Broker – This interface defines the contract for brokers. The broker is supposed to consume the financial data
quoted by the market. It keeps an internal list of orders; if an
order is matched at the price of the coming data, it executes
the order. When financial data are quoted, it also notifies the
registered traders, which are identical to trading strategies in
this platform.
(4) Financial data – This class is the abstract model for
financial data in the real world; the data could be equities,
currencies, futures, etc.
(5) Order – This class is the abstract model for market orders; it is generated by trader implementations and executed
by broker implementations.
(6) Market listener – This interface defines the contract
for listeners that are interested in quoting financial data. Its
implementations are registered to market instances and will
be notified when new financial data are quoted.
(7) Market event – This is the event object that wraps information for the event of quoting financial data.
Fig. 9
241
4.2.2 The implementation of market simulator
The business logic of the simulator is defined in concrete
implementations of market and broker; the structure of these
classes is shown in Fig. 9:
There are two concrete classes and two new interfaces introduced:
(1) Simple market – This class is a straightforward imple mentation of market interface; it simply keeps all data
in memory and uses a single thread to run the simulation.
It is not proper to be used with huge history data, but it is
sufficient for simple test tasks.
(2) Simple broker – This class implements the broker interface. It keeps all orders and trader instances in memory.
The orders are matched by prices of history data when simulating, since currently, we have only rough history data for
testing. If in the future, more detailed data such as tick-bytick data could be used, this class may be updated to support
that data.
(3) Data provider – This interface defines the contract for
data providers of the market. The market instance will use
its implementations to get financial data. This plug-in mechanism provides extensibility for different kinds of data.
(4) Trader – This interface defines the contract for trading
strategy. The user could provide its own implementations to
be tested on this platform. The implementations will be easily added to the platform as a plug-in; thus, no re-compile
Market implementation diagram
242
Feng WANG, et al. Algorithmic trading system: design and applications
is needed when testing new strategies.
The market simulator is still rough, but it models a simple
market in real world. The trading mechanism is very similar
to the actual market, and the data used to test is real history
data. The working process of the simulator is explained by
Fig. 10.
4.2.3 Information analysis
The platform also integrates the ability of analyzing financial
information and ranks it in real time. The architecture of this
functionality is shown in Fig. 11.
mentation of the information ranker interface. It is designed
to grab news from Yahoo and rank the news based on a predefined verb table.
(4) Crawler – This interface defines the contract for
crawlers used to grab information from sources like web
sites or databases.
(5) Web Crawler – This class is an implementation of the
crawler that targets grabbing news from web sites like finance.yahoo.com.
The working process is shown in Fig. 12.
(1) Information ranker – This interface defines the contract for the information analyzer. The implementations will
grab information from a specified source and use a concrete
algorithm to rank the information. The result will be sent to
trader instances and help in making the trading decision.
4.3 Order mechanism
(2) Information – This class models the financial information. Basic attributes are included, like name, time, and
content.
(1) The broker collects bids of orders that are the same
type (buy or sell) of an equity in a short time and calculate
a price that is between the lowest bid and the highest bid,
then fill all the buy orders that have a bidding price higher
than the calculated price or fill all the sell orders that have a
(3) Simple information ranker – This is a simple imple
Fig. 10
The real-world brokers use sophisticated mechanisms to
manage orders. Roughly speaking, when a new order is
placed, there are two ways to achieve it:
Market run sequence diagram
Front. Comput. Sci. China 2009, 3(2): 235–246
Fig. 11
Fig. 12
243
Information ranker class diagram
Information ranking sequence diagram
bidding price lower than the calculated price. All orders that
are not filled will be rejected.
(2) The broker collects orders and records them in a pool
if it cannot be filled. Every time a new order arrives, the
broker will check the orders pool and use the ones that match
the new one to fill each other. If the requested quantities
of the orders do not match, the lesser one would be filled
partially and kept in the pool.
One serious issue of the real-world models is that they
can not eliminate slippage. If the broker receives an order
delayed by some reasons like network issues, it may fill the
order at a price higher/lower than the trader expects. Note
that the broker did not intend to produce slippage, but slippage would always be possible because of physical issues.
It is not easy to produce the same slippage phenomenon
considering the essence of this issue. However, considering
the slippage cost, it would be meaningful to implement this
244
Feng WANG, et al. Algorithmic trading system: design and applications
feature in the simulator.
FiSim uses the following methods to handle orders:
(1) The basic order mechanism does not permit slippage.
All orders are executed according to history prices – if the
order’s bidding price equals or is higher than the requested
equity’s history price, it will be filled. Otherwise, the order
would be rejected.
(2) A configuration parameter “slippage” enables the slippage feature. If it is set to true, FiSim will generate a stochastic slippage for each order. Currently, we use a normal distribution whose mean is 0 and variance is 1 to generate the
stochastic slippage.
4.4 Experimental results
To the best of our knowledge, Reuters has done some studies on the news information aggregation to make sentimental
signals in stock market forecasting. They use the historical data (news) from their own web servers and compute the
market index for the market prediction. Our FiSim platform
is built for an efficient information aggregation and consulting system providing not only a comprehensive organized
information source but also an indicator of its impact to the
different industries/markets.
Figure 13 shows the snapshot of the working simulator.
We create three simple strategies to test the usability of the
platform, as shown in Fig. 14. The strategies are loaded
through a configuration file and added to the platform automatically. It is easy to add other new and complex strategies
to this function. The time used by the test progress is linear
with the data size. The data used to test in this project has
764 stocks and is about 150 MB. It needs about 1 minute for
a full test. Fig. 15 shows the snapshot of the simulator in
testing progress. If we are interested only in some particular stocks, the time would be reduced to several seconds or
less. Fig. 16 shows the final testing results of the generated
strategies with the detailed outcome.
The platform represents a flexible framework that could
Fig. 13
FiSim demo
Fig. 14
Strategies list
Front. Comput. Sci. China 2009, 3(2): 235–246
Fig. 15
Fig. 16
be used in financial projects like selecting or generating trading strategies. It still has many rough edges that could be
improved as future tasks, and our next job would be mostly
on using the platform in practical financial research.
! "
AT is a global trend in the international financial markets.
Early performance of exchange-based AT systems and floor
trading has shown that AT has made a great impact on market
functioning. In particular, it is likely to improve transparency
and liquidity of the markets.
As with anything, the market eventually becomes more efficient, and the model becomes less and less viable, as does
the performance of the AT platforms. AT in the exchange
market is and will continue to be a process of evolution, and
people will continue to play key roles in expanding the viability of its use. It might not be the final goal to find the
perfect trading model for the AT, and what is most important is the seamless human/machine interface that is efficient
enough for the traders to make smart trading strategies and
make deals at the first time. Since the stock index futures
plan has been proposed in the China Stock market, which
will be executed in a few months, AT will become more and
more important and popular in the China Exchange Market.
In the future work, there will be an urgent need to study how
245
Testing progress
Final report
to choose an appropriate trading model and make effective
strategies.
# 1. Eriksson S, Roding C. Algorithmic trading uncovered – impacts on an
electronic exchange of increasing automation in futures trading. Royal
Institute of Technology, Stockholm, 2007
2. Market Risk and Algorithmic Trading. AMD White Paper
3. Berkowitz S, Logue D, Noser E. The Total Cost of Transactions on the
NYSE. Journal of Finance, 1988, 41: 97–112
4. MacKinlay A C, Ramaswamy K. Index-Futures Arbitrage and the Behavior of Stock Index Futures Prices. The Review of Financial Studies,
1988, 1(2): 137–158
5. Hogan S, Jarrow R, Warachka M. Statistical arbitrage and tests of market efficiency. Working paper, 2002
6. Hogan S, Jarrow R, Teo M. Testing market efficiency using statistical
arbitrage with application to momentum and value strategies. Journal
of Financial Economics, 2004, 73: 525–565
7. Gordon Baker, Shashi Tiwari. Algorithmic Trading: Perceptions and
Challenges. Working Paper, 2004
8. Leigh Tesfatsion. Introduction to the special issue on agent-based
computational economics. Journal of Economic Dynamics and Control, 2001
9. Leigh Tesfatsion. Agent-based computational economics: modeling
economies as complex adaptive systems. Information Sciences, 2003,
149(4): 263–269
10. Shu-Heng Chen. Computational Intelligence in Agent-Based Computational Economics. Computational Intelligence: A Compendium,
246
Feng WANG, et al. Algorithmic trading system: design and applications
2008, 517–594
11. Blake LeBaron. Agent-based computational finance: Suggested readings and early research. Journal of Economic Dynamics and Control,
1998, 24: 679–702
12. Aki-Hiro Sato. Frequency analysis of tick quotes on the foreign exchange market and agent-based modeling: A spectral distance approach. Physica A: Statistical Mechanics and Its Applications, 2007,
382: 258–270
13. Dempster M A H, Romahi Y S. Intraday FX Trading: An Evolutionary
Reinforcement Learning Approach, 2002
14. Christopher Neely, Paul Weller, and Rob Dittmar. Is technical analysis
in the foreign exchange market profitable? A genetic programming
approach. Journal of Financial and Quantitative Analysis, 1997, 32(4):
405–426
15. Shu-Heng Chen and Chia-Hsuan Yeh, Genetic Programming in the
Agent-Based Artificial Stock Market. In: Proceedings of the 1999
Congress on Evolutionary Computation-CEC99, 1999, 2: 834–841
16. Shu-Heng Chen. Trends in Agnet-Based Computational Modeling of
Macroeconomics. New Generation Comput, 2004, 23(1)
17. Christopher J, Neely, Paul A, Weller. Predicting Exchange Rate
Volatility: Genetic Programming vs. GARCH and RiskMetrics.
Working paper of The Federal Reserve Bank of ST. Louis, 2001
18. Hendershott T. Electronic Trading in Financial Markets. IT Professional, 2003, 5(4): 10–14
19. Michael J. Kearns, Luis E. Ortiz. The Penn-Lehman Automated Trading Project. IEEE Intelligent Systems, 2003, 18(6): 22–31
20. Holland J and Miller J. Artificial adaptive agents in economic theory.
American Economic Review: Papers and Proceedings, 1991, 81(2):
365–370
21. Palmer G, Arthur B, Holland J, LeBaron B, and Tayler P. Artificial
economic life: A simple model of the stock market. Physica D, 1994,
75: 264–274
22. Shanghai Stock Exchange. NGTS Part Tech Guide SSE D0602, 5–6
23. Shanghai Stock Exchange. NGTS Report Trading Model, 6–10
Download