Backtesting and Optimization
Atom
9/28/2016


Hello everyone, couple questions regarding Backtesting and Optimization in StockSharp.

1. How does Stocksharp calculate fills exactly when backtesting? I have .CSV files of Bid/Ask data showing every change in Bid/Ask price. Can Stocksharp use this Bid/Ask data fill orders when backtesting? Or will it Fill on "Last" prices?

2. Can level2 data be used when backtesting in Stocksharp?

3. Does Stocksharp have Optimization tools? Such as Brute Force Optimization and Genetic Optimization?

Cheers

Tags:


Thanks:




5 Answers
Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 9/28/2016
Reply


Hello

1. Out backtesting engine can work with followed data types: level1, order book and order log. All matching down with simulation full order book. As an input data can be bid/ask prices, last tick price or OHLC. It depends what actually have a client. But you should be noticed that OHLC has a worst price estimation. The best input data - order book. And the total result, as you understand, will be depend from input data.

2. Sure. Explained in 1 par. But all csv files should have exact format as S# use.

3. We have a Brute Force Optimization implemented in designer. It is based on backtesting engine so it is easy to create the same on C# app. But we do not have Genetic Optimization. For that work we plan to implements the connector with WealthLab http://stocksharp.com/products/wld/ (product under develop and not yet available for use).
Thanks:

Hola1212

Avatar
Date: 9/29/2016
Reply


Great!

1. Does your Brute Force Optimizer fill orders using the same logic (mentioned in item #1) as your Backtesting engine?

2. Does your Backtester/Optimizer work the exact same way when backtesting/optimizing Options based strategies (as opposed to Stock, Futures, Forex based strategies)? I ask, because I find many platforms have limited features for backtesting/optimizing Options based strategies (due to the sheer number of symbols Options trading requires).
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 9/29/2016
Reply


1. Has the same logic cause Brute Forse is a batch of Backtesting iterations.

2. As a 1th par. The same. Do you know what the diff in matching between currency and stocks? Will be happy to kbow about limitation on other platform.
Thanks: Hola1212

Hola1212

Avatar
Date: 1/12/2017
Reply


Hello again.

How do I get Designer to fill using BID/ASK prices (rather then Last prices) while backtesting?

Is there a setting I need to put Designer on to do this? Or will Designer do this automatically I've imported historical BID/ASK prices for the instrument?

Thanks
Topic starter
Thanks:

Mikhail Sukhov

Avatar
Articles author Programmer Trader
Date: 1/12/2017
Reply


Designer will upload all the historical data for level1. There is no any settings for this option - should be automatically.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy