Keywords

1 Introduction

Contemporary financial decisions are often made in accordance with distributed information systems, including multi-agent systems. More importantly, these decisions must be taken in near real time, especially in case of High-Frequency Trading. The agents running in such a supporting system generate buy/sell decisions based on different methods and factors, such as technical, fundamental or behavioral analysis. It may highly increase their number within systems, frequently reaching hundreds of participating agents. Using their decisions, investment strategies are built. For example, in the Forex market, these strategies provide signals for open/close short/long positions.

Collecting decisions from distributed and independent agents entails two problems. The first concerns issues related to integrating partial outcomes into a unified, final decision that can be further utilized. This problem is widely known in the literature, and a plethora of different approaches, with their advantages and disadvantages, exist.

The second problem is directly related to the efficiency of both collecting participating agents’ decisions and their further processing. There are many approaches to this issue, spanning from, architectural requirements, through parallelization of computations. The question appears: how much and which intelligent agents should participate in making the decision process to give the most profitable investment strategy?

In our earlier research, we showed that it is not required to have a large number of agents to assert a high quality of their decision integration. The still open problem is, the selection of agents to be included in the decision process.

In this paper, we want to investigate how reducing this number of participating agents, based on different selection methods, impacts the quality of strategies created by agents in a financial application (Fintech). Therefore, the main aim of this paper is to implement and evaluate different methods for agents’ selection, to build a consensus-based strategy in a-Trader- a prototype of a multi-agent financial decision support systems on a Forex market.

The paper is structured as follows. In the next section, an overview of publications covering similar topics is given. Section 3 contains some basic information about the a-Trader system. The core of the article can be found in Sect. 4, where we present a set of algorithms for selecting agents in a multi-agent decision support system from a pool of available ones. The experimental verification of these algorithms is given in Sect. 5. Section 6 concludes that paper and sheds some light on our upcoming research plans.

2 Related Works

Incorporating agent-based solutions within contemporary financial applications is not an uncommon approach. In [8] authors give some characteristics and requirements, that such tools must fulfill. A starting point is a detailed description of the downfalls of a centralized approach. This included (among others) an enormous amount of knowledge that needed to be processed, dealing with bottlenecks and complex tasks related to data filtering. Distributing these tasks among a set of independent agents may be a good solution for given problems.

A practical example of a system fulfilling overviewed expectations is described in [9], where an application of a multi-agent based model in the stock exchange has been described. This system provides an environment capable of both performing efficient distributed computations and, by using a fuzzy expert system, intelligent decision making.

In [1] authors propose to use agents in a Forex market. The paper contains a description of an implementation of a set of independent currency trading agents, based on classification and regression models. Six trading agents were developed, each responsible for trading different currency pairs in the Forex market.

Authors of [4] describe the design of TACtic, which is a multi-agent based system built upon multi-behavioral techniques. It was developed to fulfill several goals: (i) provide bidding decisions in uncertain environments, (ii) to perform predictions about the outcomes of different auctions, (iii) to modify agents’ bidding strategies in response to trending market conditions. The architecture of the other client and server-side agents are described in [3]. Conducted experiments show the correctness of proposed ideas.

An important issue related to all approaches is their efficiency. In modern applications (especially, while processing high traffic financial data) computational complexity of knowledge processing cannot be a bottleneck. Therefore, there are many attempts to overcome related problems. One of them is using a multi-level approach to partial results integration [7, 8], which has been proved useful in terms of quality of obtained outcomes and its time-efficiency. More issues related to this problem can also be found in [2].

3 A-Trader System

The a-Trader system has been broadly described in [1]. Due to the page limit, in this paper, we provide only general information about this system. The a-Trader consists of about 1500 agents divided into the following groups: Notification Agent, Market Communication Agents, Basic Agents, Intelligent Agents, and Supervisor Agents. The strategies are built based on agents generating buy or sell a financial instrument. Thus, in our system a single agent’s decision is defined as follows [6]:

Definition 1.

Decision D about finite set of financial instruments \( E = \left\{ {e_{1} ,e_{2} , \ldots ,e_{N} } \right\} \) is defined as a set:

$$ D = EW^{ + } ,EW^{ \pm } , EW^{ - } , Z, SP,DT $$
(1)

where: \( EW^{ + } = \left\{{\left\langle e_{o} ,pe_{o} \right\rangle, \left\langle e_{q} ,pe_{q} \right\rangle , \ldots , \left\langle e_{p} ,pe_{p} \right\rangle } \right\} \). A couple \( \left\langle {e_{x}^{{}} ,pe_{x}^{{}} } \right\rangle \), where: \( e_{x}^{{}} \in E \) and \( pe_{x}^{{}} \in [0,1] \) denote a financial instrument and this instrument’s participation in the set \( EW^{ + } \), x \( \in \left\{ {o,q, \ldots ,p} \right\} \). The financial instrument \( e_{x}^{{}} \in EW^{ + } \) is denoted by \( e_{x}^{ + } \) \( EW^{ \pm } = \left\{ {\left\langle e_{r} ,pe_{r} \right\rangle ,\left\langle e_{s} ,pe_{s} \right\rangle , \ldots ,\left\langle e_{t} ,pe_{t} \right\rangle } \right\} \). A couple \( \left\langle {e_{x}^{{}} ,pe_{x}^{{}} } \right\rangle \), where: \( e_{x}^{{}} \in E \)\( pe_{x}^{{}} \in [0,1] \) and denote a financial instrument and this instrument’s participation in \( EW^{ \pm } \) the set, x \( \in \left\{ {r,s, \ldots ,t} \right\} \). The financial instrument \( e_{x}^{{}} \in EW^{ \pm } \) will be denoted by \( e_{x}^{ \pm } \), \( EW^{ - } = \left\{ {\left\langle e_{u} ,pe_{u} \right\rangle ,\left\langle e_{v} ,pe_{v} \right\rangle , \ldots ,\left\langle e_{w} ,pe_{w} \right\rangle } \right\} \). The couple \( \left\langle {e_{x}^{{}} ,pe_{x}^{{}} } \right\rangle \), where: \( e_{x}^{{}} \in E \)\( pe_{x}^{{}} \in [0,1] \) and, denote a financial instrument and this instrument’s participation in a set \( EW^{ - } \), \( \in \left\{ {u,v, \ldots ,w} \right\} \). The financial instrument \( e_{x}^{{}} \in EW^{ - } \) will be denoted by \( e_{x}^{ - } \). \( Z \in [0,1] \) - predicted rate of return, \( SP \in [0,1] \) - degree of certainty of rate \( Z \), \( DT \)- date of a decision.

A-Trader system is a multi-agent system which gives some suggestion about buying or selling some financial instruments. Different agents in the system determine decisions based on their knowledge. The set of decisions provided by each Base and Intelligent Agents are understood as the knowledge profile. The Supervisor Agent provide the final advice to the trader. In our previous work [5] we have proposed an algorithm for generating a final decision of a multi-agent system. For this purpose, a Consensus Theory has been applied.

4 Approaches to Agents’ Selection

The effectiveness of the A-Trader system has been proved in our previous works [5, 6]. It has been pointed out that the strategies implemented in Intelligent Agents have the biggest influence on the profitability of the final decision. Thus, to compare the agents’ performance, the following evaluation function was used [5]:

$$ y = (a_{\text{1}} x_{\text{1}} + a_{\text{2}} x_{\text{2}} + a_{\text{3}} x_{\text{3}} + a_{\text{4}} x_{\text{4}} + a_{\text{5}} x_{\text{5}} + a_{\text{6}} x_{\text{6}} + a_{\text{7}} x_{\text{7}} + a_{\text{8}} x_{\text{8}} + a_{\text{9}} x_{\text{9}} ) $$
(2)

where: x1 - rate of return, x2 - gross profit, x3 - 1-gross loss, x4 - the number of profitable transactions, x5 - the number of profitable transactions in a row, x6 - 1-the number of unprofitable transactions in a row, x7 - Sharpe ratio, x8 - 1-the average coefficient of volatility, x9 - the average rate of return per transaction, counted as the quotient of the rate of return and the number of transactions.

All values of xi (where i ∈ (1, 2, …, 9)) are normalized. It was adopted in the test that coefficients a1 to a9= 1/9. The final investment strategy is established based on partial decisions of Intelligent Agents. However, the question which appears: how much and which Intelligent Agents should participate in making the decision process to give the most profitable investment strategy? In this paper, we propose some heuristic algorithms for choosing agents, which can assert the best final decision. The result of the proposed algorithms is a generated set of chosen agents BA, based on input data: the performance of M agents: y(1),y(2),…,y(M), M is the number of agents, k ≤ M- the number of classes, x (1) 1 ,…, x (1) 9 , x (2) 1 ,…, x (2) 9 ,… x (M) 1 ,…, x (M) 9 .

figure afigure a

The simplest is Algorithm 1, which serves as the reference algorithm to compare with others. Algorithm 2 depends on choosing agents with the best performance value. However, in comparison with Algorithm 1, this algorithm does not need to get the number of agents in an arbitrarily way. Algorithm 3 depends on a well-known from the literature k-means algorithm. This algorithm is very simple; however, it requires to get the number of classes. Algorithm 4 is a simple modification of Algorithm 3. It depends on removing agents that spoil the performance of the final decision.

5 Research Experiment

For the purpose of performing the research experiment, the following assumptions were made:

  1. 1.

    GBP/PLN M1 quotations were randomly selected for four periods: 16-04-2018, 00:00 to 17-04-2018, 23:59, 19-04-2018, 00:00 to 20-04-2018, 23:59, 07-05-2018, 00:00 to 08-05-2018, 23:59, 21-05-2018, 00:00 to 22-05-2018, 23:59.

  2. 2.

    Simple look-back window is used for testing algorithms, i.e. the first period is used for selection agents, which determine decisions in the second period.

  3. 3.

    Signals for open long/close short position equals 1, close long/open short position equals −1) were generated by the Supervisor agents, which implements certain algorithms. The Buy and Hold (B&H) strategy were used as a benchmark (trader buys on the beginning of a given period and sell at the end of this period).

  4. 4.

    The unit of the agents’ performance analysis was pips.

  5. 5.

    The transaction costs were directly proportional to the number of transactions.

  6. 6.

    The investor engages 100% of the capital held in each transaction. 7.

  7. 7.

    The measures (ratios) and the evaluation function presented in Sect. 4 were used in performance analysis, which can be found in Table 1.

    Table 1. The trading performance

Taking into consideration the values of the evaluation function, in the second period, Algorithm 1 was the best one. In the third period, Algorithm 4 was the best. In the fourth period the Algorithm 2 was the best. The Buy and Hold benchmark were ranked lowest in all periods. The values of obtained ratios are characterized by a very large distribution. For example, the number of transactions in the period 1 in case Standard Algorithm of consensus determining (without a selection of agents) equals 65 and in case Algorithm 3 it equals 103. Therefore, a transactions’ cost in case of using Algorithm 3 is twice as high as the transactions’ cost in case of using the Standard Algorithm.

The very important ratio is the number of unprofitable consecutive transactions. If it is higher than 2 than most often the strategy must perform a market exit. Algorithms characterized by the highest rate of the return not always were evaluated as the best, because also other ratios, such as risk ratios or an average rate of the return per transaction, were taken into consideration.

Reducing the risk level is a very important task of investment strategies. All Algorithms from 1 to 4 are characterized by a higher number of transactions, in comparison with the standard consensus determination algorithm. It may be a result of a fact, that the convergence of agents’ decisions is not taken into a consideration in proposed algorithms. After the selection, the set of agents may consist of a large number of agents characterized by a very high level of decision’s convergence. Agents with the highest level of this convergence could be removed during the selection process. Therefore, the evaluation function value and ratio values cannot be the only selection criterion. However, for most of the investors, the plausible method of evaluating a stock exchange strategy is a final rate of return. Utilizing any of the proposed algorithms (1–4) gives better results than a strategy without agents’ selection. A total rate of return is the highest for Algorithm 4 (and equal 6212) for periods 2–4. The second contestant (with a slightly lower total rate of return equal to 6149) is Algorithm 1. The result obtained by the Buy and Hold (B&H) strategy is only 5892.

6 Conclusions

We presented four different heuristic algorithms for the problem, built on top of a variety of well-known tools. Some results of the experimental comparison were presented. It should be noted, that in the case of High-Frequency Trading the computational complexity of agents’ selection algorithms should as low as possible. The algorithms considered in this paper allow for achieving better performance than the consensus determined without agents’ selection. The total rate of return gathered by some of our algorithms is higher than the benchmark strategy. However, they generate a larger number of transactions, which may entail a higher transaction cost. Therefore, the agents’ evaluation based only on historical data is not sufficient.

The problem of the evaluation function definition is still open. The linear function is not the best solution from a scientific point of view, but it is easy to use from the investors’ point of view. We want to address this issue in our upcoming research.