Mamual

Below is the Text Only Excerpt automatically extracted From the Full PDF Article for Non PDF Viewer:   

Build First Trading Strategy with Quant Strategy Inventor

Flexible Quantitative Strategy Builder for Forex and Stock Market

Quant Strategy Inventor Overview
Quant Strategy Inventor is the powerful Excel based software to create profitable strategy for Stock and Forex market. With Quant Strategy Inventor, you can create the profitable trading strategies. You can analyse and predict financial markets. You can construct your own active and passive portfolio like the fund manager. You can do all this without pain of learning any programming language like C++, C sharp, MQL4, Easy Language, etc. Instead, you can do everything in your Excel Spreadsheet from backtesting to optimization of your trading strategy using simple spreadsheet formula. In this document, we introduce how to create your own trading strategy in 5 minutes in your Excel Spreadsheet. Since this is for first time user, we have put quite a lot of screenshots for better understanding. So get your Excel ready before you go through next steps.

Step 1 – Data Steps
You can use any data you want to build your strategy with our Quant Strategy Inventor including Forex, Stock, Future, etc.  In this tutorial, for simplicity we will use two instruments, S&P 500 and Microsoft Corp to build our trading strategy. If you do not have data already, then you will need to collect data to build your strategy. To do so, you need to know the ticker or symbol name for S&P 500 and Microsoft Corp. You can find these tickers in yahoo finance. Make sure that you are using correct ticker name to download data. Below we show the ticker ^GSPC and MSFT for both S&P500 and Microsoft.

Now click on ADD-INS under the Excel Menu to select our Quant Strategy Inventor Graphical User interface. Click on the Basic Module 1.

In the Basic Module 1, you have data download tab and data simulation tab. In the data simulation tab, you can simulate around 11 different mathematical models to generate artificial data for you to study your trading and investment strategies. Here we will just use data download module only for simplicity. You can always play around with different feature of Quant Strategy Inventor.

To download data, click Ticker Range and then select ^GSPC and MSFT on your spreadsheet.

Do the same for Output Range to select where you want to download the historical data on your spreadsheet. In default our starting date is 2011 January 1. If you want, you can always change the starting date to download more data. Here we will just use default. Now click “Download Historical Data” button to download the data.

Now both S&P500 and Microsoft data have been downloaded. Delete Adjusted Close since our open, high, low and close prices are already adjusted automatically.

Data downloading steps are completed. Excel is so flexible tool having interfaces with many financial tools and software. If you wish, you can always use external data to create your trading strategy. Since we are going to use S&P 500 to generate signal for Microsoft, you should swap the data between ^GSPC and MSFT. Just because it is more sensible to explain Microsoft stock in terms of S&P500 although it is just theory.

Step 2 – Signal Steps
Building strategy is like building house. Normally you need a lot of information and careful plan to go ahead with it. In this tutorial, we will create some simple strategy for an example. We have intentionally chosen two instrument to show how flexible to build the trading strategy with our Quant Strategy inventor. For now, we do not know if they are profitable strategy or not yet. We will estimate their profitability in the backtesting and optimization stage later. In this signal construction task, we will use Triple Exponential Moving Average (T3) and Simple Moving Average Cross (SMA) signal. The syntax for T3 indicator is like this: “TA_T3(close, timeperiod=6, vfactor=0.7)” and in the Excel  you will put the formula like this “=TA_T3(R10:R1466, 6, 0.7)” as an array formula. When you put array formula, you will select the range from U10 to U1466 first, then click formula bar to type  “=TA_T3(R10:R1466, 6, 0.7)”. After that, click Ctrl + Shift + Enter at the same time. I know this Ctrl + Shift + Enter might be strange thingy to the first time user. However, millions of Excel users are using Array formula every day and you will get used to it soon. It is very handy. Once you have entered the array formula for T3 correctly, T3 indicator value will be calculated in U column. If you are new to Excel Array formula, then this link is useful for you: http://www.excel-easy.com/functions/array-formulas.html.

Use the same process to enter Simple Moving average array formula to V column too. The syntax for simple moving average is: “TA_SMA(close, timeperiod=13)”. So you will put “=TA_SMA(R10:R1466, 13)” from V10 to V1466. Now you have created both T3 and Simple Moving Average together. Next we will generate T3 – SMA cross over signal.

Before we generate signal, let us exam T3 and SMA on simple line chart. We can see that T3 is much faster than SMA. Therefore, we can generate buy condition like “if T3 is cross over SMA then buy”. Likewise, you can set sell condition like “if T3 is cross down SMA, then sell”. Here when we buy or sell, we will buy Microsoft and not S&P500. We do this to show how easy to create multi-asset based trading strategy with our Quant Strategy Inventor. If you prefer single asset trading strategy, then you will just need one price data. However, normally index like S&P 500 is quite significant indicator for US Stock market. It might be quite valid idea to use S&P 500 to trade Microsoft. However, in this tutorial, we will be more stick to technical instruction to show the step-by-step guide to build trading strategy without writing coding. In fact, we are not sure whether this strategy is profitable in real world yet.

To generate buy condition, if T3 is cross over SMA, we can simply enter formula: “=IF(AND(U11>V11, U10<V10), 1, “”)”.  Note that U11 and U10 is T3 values at date 2011-01-04 and 2011-01-03 respectively. Likewise, V11 and V10 is SMA values at 2011-01-04 and 2011-01-03. This formula tells Excel to generate signal 1 if T3 value is greater than SMA value at date 2011-01-04 and if T3 value is smaller than SMA value at date 2011-01-03. So this is the mechanical way of telling Excel our cross over strategy in spreadsheet formula. Drag the formula down to cell W1466. Now your buy condition is ready.

In fact, in stock market, most of time, you will be profitable from buying the shares and not from selling the shares. In fact, you can still create sell condition if you wish. Whether you want to see the trading statistics for sell or not, it is your choice. In forex, you can make money when you are selling the instrument too. So forex traders, you should create sell signal too. To create sell condition, simply you can do the opposite for sell condition. For example, you can put the formula like this: =IF(AND(U11<V11, U10>V10), -1, “”). It is not too difficult if you think about what value each U11, U10, V11 and V10 represents. Also drag the formula to X1466. Now our sell signal is ready too. In our next step, we will generate actual order for buy and sell backtesting simulation.

Step 3 – Order Steps
To generate backtesting simulation, we will create nice heading for our order Instruction for the range Y8:AB9, which is coloured in yellow. You can use any colour or font you want. We used yellow colour for order for now. To make the virtual order which our backtesting and simulation machine will use, you will use the Order Open Buy syntax for buy like this:
OrderOpenBuy_(signal range, volume, take Profit, stop Loss, instruction, id).
Signal range are where the signal is located. For example, since we have put our buy signal at range W10:W1466, our signal range is W10:W1466. For the volume, we will put 1000. This means that we will buy 1000 shares of Microsoft, when we get the buy signal. Take Profit and Stop Loss can be empty. If stop loss and take profit is empty then in our backtesting simulation, we will assume that the order will be closed at certain condition. For example, it is common that closing buy position when the sell signal shows up. Therefore, in this tutorial, we will close buy condition when the sell signal shows up. If you wish to use take profit and stop loss, then you can use numeric values like 5 or 10. For example, when you use syntax like this: “=OrderOpenBuy_(W10:W1466, 1000, 5, 5, “”, 1)”. This means that if the price are rising by 5 dollar, the buy condition will be closed with profit and likewise, the price are dropping by 5 dollar, the buy condition will be closed with loss. Some broker may not allow you to use take profit and stop loss order, therefore, you should use this condition after you have checked with your brokers. Since we are not going to use take profit and stop loss condition, we will just use the buy syntax like this: “=OrderOpenBuy_(W10:W1466, 1000, 0, 0, “”, 1)”. Note that this is also array formula, So put this formula across the range Y10:Y1466 with Ctrl + Shift + Enter keys.

If you see the text like “Open, Buy, 1000, 0, 0, na, 1” in the same row as the buy signal row, then you have done everything correctly. This means that we will buy 1000 Microsoft shares when T3 moving average is cross over simple moving average of S&P 500. Now we will enter formula for buy close condition. We will assign ID: 1 for the signal generated. This ID is useful later when you want to combine multiple strategies in the same spreadsheet. As you imagine for second and third strategies you can give ID: 2 and ID: 3 respectively.  The syntax for Buy close is: OrderCloseBuy_(signal Range, instruction, id). Like before, signal range are where the buy close signal is located. Normally this is when the sell signal shows up. Instruction is how you want to close the buy positions. Normally you should type “all” for the instruction. This means that you will close all buy positions. When you assign ID here, then we will only close order with the same ID. Otherwise, we will close all order regardless of the ID.

This is the syntax we will enter for our buy close order “=OrderCloseBuy_(X10:X1466, “all”, 1)”. This means that when sell signal (-1) shows up, we will close buy position for Microsoft. Since for standard brokerage practice, you can make profits from buy order only for stock market, we have already completed our task of building order management. In fact, we are ready for our backtesting simulation. For Forex traders, make sure that you are completing for both buy and sell orders.

Step 4 – Backtesting Simulation
Now to do backtesting simulation, we will call our backtesting simulation for Stock Data. To do so just go to ADD-Ins again and click Analytics Module 1.

Now you will see our backtesting simulator. In our backtesting simulator, you can perform backtesting, optimization and cost simulations. There are some inputs, which you have to fill in before backtesting. Data Range is the range where your price data are located. Order Range is the range where your order instruction are located. Input Range is where your input are located for your optimization. For backtesting, you do not need input range to be filled (For some Excel version you might be prompted to fill input range too.). Therefore, to start backtesting, you need to fill data range and order range for now. You can change backtesting inputs and commission settings later. But we will just use default setting for now since this is just simple demonstration tutorial.

For Data Range, make sure that you are including Date, Open, High, Low, Close, Volume columns as shown below for Microsoft as shown in the screenshots below. Most of time do not include the headings.

For Order Range, you only need to include Buy Open (Y) and Buy Close (Z) columns since we have not create sell open and sell close instruction.

Once you have filled Data Range and Order Range. You are now ready to do backtesting for your strategy. Simple click “Backtest” button.

After we have clicked the backtest button, our backtesting simulator will perform all the calculation and print trading results in the separate worksheet. Here we have found some interesting results. Can you see that the balance growth curve is rather going up? This is not bad for this simple strategy.

You can also check the detailed trading results. Check the net profit and annual compounding growth rate (ACGR). Our net profit is around 14435 US dollar with ACGR of 4.48%. We have just beat that useless interest rate. Anyway, this is only the first step with our Quant Strategy Inventor.

Step 5 – Optimization
Optimization is a powerful technique to improve your profitability. You can say this is some sort of brutal force search meaning that you are keep running your algorithm with different inputs until you search some profitable settings for your strategies. On the other hands, optimization takes quite lengthy computation. So you should use them carefully. Luckily, the optimizer in Quant Strategy Inventor is very flexible. You can define how many trials you want to do before optimization. You can also force the optimizer to quit in the middle of optimization task. So feel free to play around with our optimizer and try to find mega profitable trading strategy.  When you want to quit during the optimization just press “X” key.
So now, we will introduce how you can start the optimization with our previous strategy. To do optimization, you need to create input control areas (range T1:V6) in your spreadsheet as we have shown below (coloured as green). In this tutorial, we will use time period of T3 moving average and time period of simple moving average as our sample input 1 and input 2. In the next step, we have to refer to our signal formula to this input cell U3 and V3. Therefore, our array formula for T3 column will become like this: “=TA_T3(R10:R1466, U3, 0.7)”. Our array formula for SMA will become like this: “=TA_SMA(R10:R1466, V3)”.  Also we need to define start, stop and steps for each inputs. Since we are using T3 cross over SMA strategy. For optimization, you must have 4 rows including inputs, start, stop and step rows. You can have 1 or 2 inputs and you can even have 10 inputs if you like.

To choose our inputs sensibly, it is not wise to have large time period for T3 because if T3 is more lagging than SMA, we won’t get any signals. So we will start time period of T3 from 5 to 13 in the step of 1. So we will test 5, 6, 7, 8, 9, 10, 11, 12 and 13 for our T3 time period. For simple moving average, we can have greater period but not too great because we might not get many trades. So we will start from 13 to 50 only in step of 1. In theory, we will test all the combination of T3 period and SMA period in this range. This will be around 350 combination of two inputs. Let us see how our Quant Strategy Inventor is handling this 350 repetitive backtesting.

When you do optimization, you must fill the input range and you should never leave it empty.

Once you are ready with optimization, then click optimization button.

In our computer, 342 backtesting took little bit more than 1 minute. I think this is not too bad comparing to what we are rewarded with the profitable trading strategy. Once the optimization is done. Quant Strategy inventor will print the optimization results in separate worksheet. Let us exam the profitability. To do so, simply use Excel’s custom sort functions.

We will sort our backtesting results in terms of net profit for now. If you wish, you can use other trading statistics you like. Some people might prefer Sharpe ratio or Calmar ratio.

You can see that at some backtesting we have more than doubled up our profits from 14,435 US dollar to 37,942 US dollar.

Also our Sharpe ratio and Calmar ratio have improved quite a lot with our optimization. If you wish to drill down particular backtesting, then you can. Just simply copy and paste the new input 1 and input 2 into our strategy worksheet. Then do backtesting with new inputs. In our case, we will use 10 and 14 as our new inputs since they have shown great profits in our optimization.

Make sure that you enter new inputs 10 and 14 in our strategy worksheet cell U3 and V3.

You can see more sharp increase in our balance curve too in the balance growth curve below.

Conclusion
This tutorial covers the strategy building, backtesting and optimization feature of Quant Strategy Inventor. Note that this is only part of the functionality you can access from our Quant Strategy Inventor. As you have seen in this tutorial, most of time, you can use native spreadsheet formula to build your trading strategy. Even though we have spent quite a lot of time to explain these basics steps, in fact, it might take less than 5 minutes to test this trading strategy to some experienced hands. Whichever strategy you are building, please make sure that you go through data steps, signal steps and order instruction steps. If you want to use VBA to test your trading strategy, then most of time, your VBA formula will be working inside signal steps.
We believe that you can create any trading strategy you can imagine. You can combine different strategies too in one single backtesting. When you want to combine multiple strategies, you need to assign different ID to different strategies. The ID should be from 1 to 100. The ID can not be smaller than 0 and greater 100 for now meaning that you can combine up to 100 trading strategies. Cost simulation is much like optimization. You might perform the cost simulation after you have found profitable trading strategies.

Instruction (Manual) Document

This part should be filled by author before your submission.

1. Information about Author
Your Surname ATI
Your First Name   ATI
Your Country ATI
Your Email Address ATI
Your ID on our website ATI

2. Information for the submitted materials
Title of the submitted instruction or manual Build First Trading Strategy with Quant Strategy Inventor
Language of Instruction English
Key words (at least 3) Forex, Stock, Investment, Trading, optimization, simulation, backtesting, technical analysis, economic analysis, Quantitative Trading
Date of Completion 17 October 2016
Version of this Document 1.0

3. If it is about any trading platform or any of our products (leave empty if you don’t use)
Name of Trading Platform Quant Strategy Inventor
Trading Platform version Version 5.03
Name of Product Quant Strategy Inventor
Product version 5.03

Below is the Text Only Excerpt automatically extracted From the Full PDF Article for Non PDF Viewer:   

Introduction to Quant Strategy Inventor

Flexible Quantitative Strategy Builder for Forex and Stock Market

1. Quant Strategy Inventor – Flexible Quantitative Strategy Builder for Forex, Stock and Future Market
Quant Strategy Inventor is the powerful Excel based software to create profitable strategy for Stock, Forex and Future market. With Quant Strategy Inventor, you can create the profitable trading strategies. You can analyse and predict financial markets. You can construct your own active and passive portfolio like the fund manager. You can do all this without pain of learning any programming language like C++, C sharp, MQL4, MQL5, Easy Language, etc. Instead, you can do everything in your Excel Spreadsheet from backtesting to optimization of your trading strategy using simple spreadsheet formula. Quant Strategy Inventor is so flexible so you can even build your strategy using VBA code if you prefer that way. To guide you the way through our Quant Strategy Inventor, we ship our Quant Strategy Inventor with several example-trading strategies both created in spreadsheet and VBA. So you can get going with your strategy building immediately.

2. What is Quant Strategy Inventor?
Quant Strategy Inventor is the spreadsheet-oriented software featuring powerful backtesting simulation, optimization, worst-case scenario analysis, technical analysis and economic analysis for your trading and investment. Quant Strategy Inventor is not statistical software like SAS or SPSS and it is strongly oriented through trading and investment application. The Quant Strategy Inventor was created as an Excel Add-in meaning that it runs in your Excel Spreadsheet. With user friendly and highly customizable feature of Excel, you can generate profitable strategy in less time with less labour cost. Advantage of using Quant Strategy Inventor is that you do not have to learn any third party programming language to develop and test your trading ideas. You can simply create your sophisticated trading strategies using Excel’s built in spreadsheet formula.  The good news is that you do not have to spend hours of time to learn new programming language like C++ or C Sharp or MQL4 or easy language at all. Without knowing any programming language, you can still build powerful trading strategy with our Quant Strategy Inventor. This is not necessarily meant that people with coding ability can’t use our Quant Strategy Inventor. If you wish, you can create your trading logic in full VBA language too. You can build as complex model as you can. You can still use our backtesting algorithm to test your trading ideas created from your VBA code. Even though our Quant Strategy Inventor is the spreadsheet-oriented software, we still use the rigorous power of C++ and C sharp for many of its calculation algorithm.
You can visualize your forex and stock market data with plenty of flexible charting techniques already built in Excel. Additionally we offer over 80 technical indicators for your trading model construction. In your trading model, you can include many real world economic variables like country’s GDP or unemployment rate or commodity prices. You can load any free data or commercial data to build your own trading strategies. Test if the trading idea is valid with our Quant Strategy Inventor. Check its worst case- scenario with our spread and slippage simulator. You can even build optimal portfolio for your serious capital using our Quant Strategy Inventor.

Figure 1: Menu to access Quant Strategy Inventor Modules. We have created some sample spreadsheet with some simple trading strategy.

Figure 2: Backtesting and optimization results on sample Strategy.

3. Benefit of Quant Strategy Inventor
The biggest benefits of Quant Strategy Inventor is that firstly you can build profitable trading strategies in your spreadsheet without learning any third party languages like C++, C sharp, MQL4, MQL5, easy language, MatLab syntax, etc. Remember that Excel is mostly used tools in any business and finance world. Most of traders in London and Wall Street are capable of using Excel for their trading and investment analysis. Even if they use some third party platform, they never give up using Excel because simply it is so flexible and easy to use.
Secondly, you can add any economic or real world variables in your trading strategies with our Quant Strategy Inventor. For example, if US retails sales data are important for your trading, then just grab the data from net and paste them right next to your spreadsheet trading strategies to test what kind of impact they have on your strategy. Once you have built trading strategies in your spreadsheet, you can do various things like backtesting, optimization, and portfolio construction with our Quant Strategy Inventor or even more is possible. Below is the breakdown of benefits of our Quant Strategy Inventor.
Bulk data downloading facility for US and Non-US stock market data. Visualize forex and stock data with over 80 technical analysis in your Spreadsheet. For Forex data simply use Meta Trader to pull some free data for analysis and build trading strategy.
Quickly test various trading ideas in your spreadsheet without writing code. You can literally create any trading strategies you can imagine with our Quant Strategy Inventor.
Test multiple trading strategies at the same time. Currently you can test up to 100 strategies at the same time.
Including economic variables are tough in many trading platforms. In our Quant Strategy Inventor, you can include any commercial or non-commercial economic data into your trading strategy without incurring any additional development cost.
You can apply your trading strategy to many different instruments across different market. For example, you can build trading strategy for forex.  If you are curious about the profitability of your strategy in stock market, then you can quickly copy and paste stock market data in your trading strategy template to test their profitability. It is only matter of few clicks to know the truth in your spreadsheet.
Build trading strategy at the same time as you manage your portfolio.
If you prefer to hide your trading strategy, you can still build your trading strategy using full VBA code. Therefore, you have an additional option to use VBA code for your strategy building if you wish.
Quant Strategy Inventor include many other statistical algorithm to support your trading and investment. For example, you can use our Augmented-Dickey Fuller test to build pair trading strategy. You can use our Mean Variance portfolio algorithm to manage many different trading strategies. You have an access to nine different forecasting algorithm and ARIMA forecasting model to gauge overall market direction. You can also check seasonal behaviour of any stock market data using our Quant Strategy Inventor. Besides these algorithms, there are many other algorithms to support your trading and investment with our Quant Strategy Inventor.
You can simulate trading cost with our Quant Strategy Inventor to estimate your trading model in more realistic sense. You can apply slippage and widened spread for forex. You can also simulate different level of fees for stock trading in one button click.

Figure 3: Candlestick Chart of EURUSD ticker with simple moving average 13, simple moving average 40, Bollinger bands and Parabolic SAR and T3 moving average.

Figure 4: Mean Variance Portfolio construction with the portfolio of the popular US stock

Figure 5: S&P 500 index vs Stock data. This analysis was performed through Market Analysis page in our Quant Strategy Inventor.

4. Main Feature of Quant Strategy Inventor
Quant Strategy Inventor consists of four modules including Basic Module 1, Analytic Module 1, Analytic Module 2 and Help Module. Each module is made of multiple pages of Graphical User Interface where you can execute your command through. Below we list the functionality of each module.

1) Basic Module 1
Data Download: You can download any stock market data from Yahoo finance. This include both US and non-US stocks. You can even download bulk symbols in just one click. You can also control and select various download options through our graphical user interface.
Simulate financial market data: You can simulate various financial market data with 11 different equations. Simulated data can be often important when you want to test your trading ideas. You can view the equations from the Appendix page of this document.

Figure 7: Graphical User Interface for Technical analysis. You can load up to three instruments at the same time. You can do various technical analysis and you can study the co movement of two or three instruments to construct pair trading strategy.
2) Analytic Module 1
Technical Analysis: You can access to 22 technical indicators from Graphical User Interface. You can access to over 80 different technical indicators through your spreadsheet formula. With Graphical User Interface, you can automatically generate candlestick chart together with various technical indicators. You can even line up three different instruments in the same spreadsheet. This is particularly useful when you want to construct pair trading strategy or beta driven portfolio. You can also save your favourite technical indicators in your spreadsheet. Later you can load them in one button click.
Backtesting and optimization for Forex: You can backtest and optimize your trading ideas for Forex market data. You can build your trading logics with technical indicators or economic data or mathematical models or price action. Or you can combine all of them together in your model at the same time. After you have constructed your trading model in your spreadsheet or VBA, you can test and refine your trading strategy using our backtesting and optimization simulator. You can also perform worst-case scenario analysis for your trading strategy with our spread and slippage simulator.
Backtesting Stock: You can use the above the same features for stock market data too.

Figure 8: Graphical User Interface for Backtesting Forex data. You can backtesting, optimization and spread – slippage simulation.

3) Analytic Module 2
Exploratory Analysis:  In Exploratory Analysis, you can generate descriptive statistics and histogram for your data. You can also generate ACF and PACF plots at the same time. All this analysis can be done in one button click.
Stationary Analysis: In stationary analysis, you can test stationarity of your time series using Augmented Dickey Fuller test. This is very important assumption for your trading model creation. It is also an important testing tool to create some advanced trading strategy like statistical arbitrage.
Seasonality Analysis: With seasonality analysis, you can check some regular cyclic movement in your stock data. You can visualize those periodic movements in your spreadsheet and in chart. When you have found some seasonality in your data, you can build your trading strategy accordingly to capture such a dynamics.
Forecasting Algorithm: With Forecasting algorithm, you have access to nine exponential smoothing forecasting model. You can create popular damped trend exponential smoothing model or damped trend with additive seasonal model. You can also transform your data with log or box-cox automatically prior to building forecasting model. The routines are fully automatic and nine exponential smoothing models are listed in the appendix in this document.
ARIMA: Autoregressive Integrated Moving average techniques are commonly used forecasting methods for economist.  With our Quant Strategy Inventor, you can access to both ARIMA and SARIMA forecasting model.
Portfolio Analysis: With our Quant Strategy inventor, you can construct popular Mean-Variance portfolio model with one just one-button click. If you prefer to trade with diversification in your portfolio. This is great tool for you. This is also quite handy tools to construct passive portfolio model when you have serious capital to trade.
Market Analysis: With Market Analysis, you can calculate market alpha, beta, CAPM return as well as other useful investment statistics. You can use this feature when you want to analyse your stock or forex data against market index like S&P500, FTSE100, etc.

Figure 9: Graphical User Interface for forecasting page. You can use nine different exponential smoothing forecasting model with/without Log and Box-Cox transformation.

4) Help module
Help module does not include any algorithms or calculation. The most important function of the Help module is to get your installation done and license activated. We will explain about this in the separate installation page.

5. Strategy Creation with Backtesting, optimization and Cost Simulation

The focus of Quant Strategy Inventor is to build profitable trading and investment strategy.  The biggest advantage of our Quant Strategy Inventor comes from its flexibility and comprehensiveness exposing its interface through Excel Spreadsheet. Instead of writing C++ or C sharp code running at background, you can develop transparent and easy to understand algorithm for your strategy. At the same time, you can build the trading strategy using full VBA code too if you wish and if you believe that is more efficient for your strategy building. Even if you build your strategy in full VBA code, you can still access all the features available from our Quant Strategy Inventor. Currently you can use our Quant Strategy Inventor to build strategy for Forex, Stock, Future and Commodities Market. You can include any technical analysis, economic variables, price action and pattern recognition techniques in your trading strategy. Once you have created some brilliant trading strategy, you can do fine-tuning of your trading strategy with optimizer built in Quant Strategy Inventor. Furthermore, you can do cost simulation for your trading strategy for more realistic estimation of your trading outcome. After the simulation, Quant Strategy Inventor will report trading statistics for both buy and sell positions as well as combined statistics.

Figure 10: Graphical User Interface for Stock Ticker Backtesting

Figure 11: Sample CCI cross over trading strategy utilizing take profit and stop loss together. To do fine tuning the parameters of the CCI strategy, it require the optimization with 7040 backtesting.

Figure 12: After optimization, you can sort the backtesting results according to your preferred trading statistics.

6. Sample Screenshots from Quant Strategy Inventor

Figure 13: Two ticker loaded together to find out potential pair trading opportunity.

Figure 14: Exponential Smoothing forecasting for FTSE250, S&P500 and DAX indices.

Figure 15: Histogram, Autocorrelation Function and Partial Autocorrelation Function for EURUSD.

Figure 16: ARIMA (1, 1, 1) Forecasting for EURUSD Daily Data.

7. Appendix – Math and Theory behind Quant Strategy Inventor

1) Technical indicators accessible from Graphical User Interface
Currently you can access to these indicators through graphical user interface. We will support more indicators from our Graphical user Interface in the future.
Simple Moving Average
Linear Weighted Moving Average
Exponential Moving Average
Double Exponential Moving Average
Parabolic SAR
Bollinger Bands
Triple Exponential Moving Average
Kaufman Adaptive Moving Average
Triple Exponential Moving Average (T3)
Commodity Channel Index
Standard Deviation
Relative Strength Index
Stochastic
Average Directional Movement Index
Moving Average Convergence/Divergence
Momentum
Williams’ %R
Rate of Change
Money Flow Index
TRIX (1-day Rate-Of-Change (ROC) of a Triple Smooth EMA)
Ultimate Oscillator
Average True Range
On Balance Volume
Chaikin A/D Line

2) Technical indicators accessible from your Excel Spreadsheet
You can call these indicators using worksheet formula.
Chaikin A/D Line
Chaikin A/D Oscillator
On Balance Volume
Hilbert Transform – Dominant Cycle Period
Hilbert Transform – Dominant Cycle Phase
Hilbert Transform – Phasor Components
Hilbert Transform – SineWave
Hilbert Transform – Trend vs Cycle Mode
Average Price
Median Price
Typical Price
Weighted Close Price
Average True Range
Normalized Average True Range
True Range
Two Crows
Three Black Crows
Three Inside Up/Down
Three-Line Strike
Three Outside Up/Down
Three Stars In The South
Three Advancing White Soldiers
Abandoned Baby
Advance Block
Belt-hold
Breakaway
Closing Marubozu
Concealing Baby Swallow
Counterattack
Dark Cloud Cover
Doji
Doji Star
Dragonfly Doji
Engulfing Pattern
Evening Doji Star
Evening Star
Up/Down-gap side-by-side white lines
Gravestone Doji
Hammer
Hanging Man
Harami Pattern
Harami Cross Pattern
High-Wave Candle
Hikkake Pattern
Modified Hikkake Pattern
Homing Pigeon
Identical Three Crows
In-Neck Pattern
Inverted Hammer
Kicking
Kicking – bull/bear determined by the longer marubozu
Ladder Bottom
Long Legged Doji
Long Line Candle
Marubozu
Matching Low
Mat Hold
Morning Doji Star
Morning Star
On-Neck Pattern
Piercing Pattern
Rickshaw Man
Rising/Falling Three Methods
Separating Lines
Shooting Star
Short Line Candle
Spinning Top
Stalled Pattern
Stick Sandwich
Takuri (Dragonfly Doji with very long lower shadow)
Tasuki Gap
Thrusting Pattern
Tristar Pattern
Unique 3 River
Upside Gap Two Crows
Upside/Downside Gap Three Methods
Any many more

3) Simulation Model to generate time series data
The data generating process of the three linear patterns include:

 Autoregressive 1 (AR 1)
y_t=0.6y_(t-1)+ε_t , a representative linear model.

 Autoregressive 2 (AR 2)
y_t=0.4y_(t-1)-0.3y_(t-2)+ε_t , a stationary AR model.

 Moving Average 2 (MA 2)
y_t=ε_t-0.4ε_(t-1)-0.3ε_(t-2)  .
The data generating process of the five nonlinear patterns include:
Threshold autoregressive (TAR)
y_t=0.9y_(t-1)+ε_t   for  |y_(t-1) |≤1  ,
y_t=-0.3y_(t-1)+ε_t   for  |y_(t-1) |>1  , an example considered by Tong (1983).

 Nonlinear moving average (NMA)
y_t=ε_t-0.3ε_(t-1)+0.2ε_(t-2)+0.4ε_(t-1) ε_(t-2)-0.25ε_(t-2)^2  , where the final two terms give a nonlinear MA model that is typically noninvertible.

 Bilinear (BL)
y_t=0.7y_(t-1) ε_(t-2)+ε_t , a bilinear model having the same covariance properties as a white noise (Granger & Andersen, 1978).

 Bilinear AR (BL AR)
y_t=0.4y_(t-1)-0.3y_(t-2)+0.5y_(t-1) ε_(t-1)+ε_t  , a model containing both linear and bilinear terms.

 Bilinear ARMA (BL ARMA)
y_t=0.4y_(t-1)-0.3y_(t-2)+0.5y_(t-1) ε_(t-1)+0.8ε_(t-1)+ε_t  .

4) Exponential Smoothing Equations used in Forecasting Algorithm
A. Notations
Ft = Forecast at period t
At = Actual at period t
et = errors at period t
Lt = Level at period t
Tt = Trend at period t
St = Seasonality at period t
α = smoothing parameter alpha for level
β = smoothing parameter beta for trend
γ = smoothing parameter gamma for seasonality
Ф = damping factor phi for trend
m = subscript “m” indicates the seasonality of the time series

∑_(i=1)^h▒〖ϕ^i T_t=(ϕ+ϕ^2+ϕ^3+ ∙∙∙∙∙∙ +ϕ^h)T_t 〗

B. Single Exponential Smoothing (SES)-ETS (A, N, N)
Non Error Correction Version
L_t=αA_t+(1-α) L_(t-1)
F_(t+h)=L_t

Error Correction version
L_t=L_(t-1)+αe_t
F_(t+h)=L_t

C. Additive Seasonality Exponential Smoothing (ASES) -ETS (A, N, A)
Non Error Correction Version
L_t=α〖(A〗_t-S_(t-m))+(1-α) L_(t-1)
S_t=γ(A_t-L_(t-1))+(1-γ) S_(t-m)
F_(t+h)=L_t+S_(t-h+m)

Error Correction version
L_t=L_(t-1)+αe_t
S_t=S_(t-m)+γe_t
F_(t+h)=L_t+S_(t-h+m)

D. Multiplicative Seasonality Exponential Smoothing (MSES) -ETS (A, N, M)
Non Error Correction Version
L_t=α A_t/S_(t-m) +(1-α)(L_(t-1))
S_t=γ(A_t/L_(t-1) )+(1-γ)S_(t-m)
F_(t+h)=L_t  S_(t-m+h)

Error Correction version
L_t=L_(t-1)+α(e_t/S_(t-m) )
S_t=S_(t-m)+γ(e_t/L_(t-1) )
F_(t+h)=L_t  S_(t-m+h)

E. Linear Trend Exponential Smoothing (LTES)-ETS (A, A, N)
Non Error Correction Version
L_t=αA_t+(1-α)(L_(t-1)+T_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) T_(t-1)
F_(t+h)=L_t+〖hT〗_t

Error Correction version
L_t=L_(t-1)+T_(t-1)+αe_t
T_t=T_(t-1)+αβe_t
F_(t+h)=L_t+〖hT〗_t

F. Damped Trend Exponential Smoothing (DTES)-ETS (A, Ad, N)
Non Error Correction Version
L_t=αA_t+(1-α)(L_(t-1)+ϕT_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) 〖ϕT〗_(t-1)
F_(t+h)=L_t+∑_(i=1)^h▒〖ϕ^i T_t 〗

Error Correction version
L_t=L_(t-1)+〖ϕT〗_(t-1)+αe_t
T_t=〖ϕT〗_(t-1)+αβe_t
F_(t+h)=L_t+∑_(i=1)^h▒〖ϕ^i T_t 〗

G. Linear Trend Additive Seasonality Exponential Smoothing (LTASES)-ETS (A, A, A)
Non Error Correction Version
L_t=α〖(A〗_(t-) S_(t-m))+(1-α)(L_(t-1)+T_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) T_(t-1)
S_t=γ(A_t-L_(t-1)-T_(t-1))+(1-γ) S_(t-m)
F_(t+h)=L_t+〖hT〗_t+S_(t-m+h)

Error Correction version
L_t=L_(t-1)+T_(t-1)+αe_t
T_t=T_(t-1)+αβe_t
S_t=S_(t-m)+γe_t
F_(t+h)=L_t+〖hT〗_t+S_(t-m+h)

H. Linear Trend Multiplicative Seasonality Exponential Smoothing (LTMSES)-ETS (A, A, M)
Non Error Correction Version
L_t=α A_t/S_(t-m) +(1-α)(L_(t-1)+T_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) T_(t-1)
S_t=γ(A_t/(L_(t-1)+T_(t-1) ))+(1-γ)S_(t-m)
F_(t+h)=〖(L〗_t+〖hT〗_t)S_(t-m+h)

Error Correction version
L_t=L_(t-1)+T_(t-1)+α(e_t/S_(t-m) )
T_t=T_(t-1)+αβ(e_t/S_(t-m) )
S_t=S_(t-m)+γ(e_t/(L_(t-1)+T_(t-1) ))
F_(t+h)=〖(L〗_t+〖hT〗_t)S_(t-m+h)

I.  Damped Trend Additive Seasonality Exponential Smoothing (DTASES)-ETS (A, Ad, A)
Non Error Correction Version
L_t=α〖(A〗_t-S_(t-m))+(1-α)(L_(t-1)+〖ϕT〗_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) 〖ϕT〗_(t-1)
S_t=γ(A_t-L_(t-1)-〖ϕT〗_(t-1))+(1-γ) S_(t-m)
F_(t+h)=L_t+∑_(i=1)^h▒〖ϕ^i T_t 〗+S_(t-m+h)

Error Correction version
L_t=L_(t-1)+ϕT_(t-1)+αe_t
T_t=〖ϕT〗_(t-1)+αβe_t
S_t=S_(t-m)+γe_t
F_(t+h)=L_t+∑_(i=1)^h▒〖ϕ^i T_t 〗+S_(t-m+h)

J.  Damped Trend Multiplicative Seasonality Exponential Smoothing (DTMSES)–ETS (A, Ad, M)
Non Error Correction Version
L_t=α A_t/S_(t-m) +(1-α)(L_(t-1)+〖ϕT〗_(t-1))
T_t=β(L_t-L_(t-1))+(1-β) 〖ϕT〗_(t-1)
S_t=γ(A_t/(L_(t-1)+〖ϕT〗_(t-1) ))+(1-γ)S_(t-m)
F_(t+h)=〖(L〗_t+∑_(i=1)^h▒〖ϕ^i T_t)〗 S_(t-m+h)

Error Correction version
L_t=L_(t-1)+〖ϕT〗_(t-1)+α(e_t/S_(t-m) )
T_t=〖ϕT〗_(t-1)+αβ(e_t/S_(t-m) )
S_t=S_(t-m)+γ(e_t/(L_(t-1)+〖ϕT〗_(t-1) ))
F_(t+h)=〖(L〗_t+∑_(i=1)^h▒〖ϕ^i T_t)〗 S_(t-m+h)

Instruction (Manual) Document

This part should be filled by author before your submission.

 Information about Author
Your Surname ATI
Your First Name   ATI
Your Country ATI
Your Email Address ATI
Your ID on our website ATI

 Information for the submitted materials
Title of the submitted instruction or manual Quant Strategy Inventor Introduction
Language of Instruction English
Key words (at least 3) Forex, Stock, Investment, Trading, optimization, simulation, backtesting, technical analysis, economic analysis, Quantitative Trading
Date of Completion 11 October 2016
Version of this Document 1.3 (20 October 2016)

 If it is about any trading platform or any of our products (leave empty if you don’t use)
Name of Trading Platform Quant Strategy Inventor
Trading Platform version Version 5.16R
Name of Product Quant Strategy Inventor
Product version 5.16R