Login Page - Create Account

Support Board


Date/Time: Fri, 20 May 2022 16:52:13 +0000



Backtesting fill prices

View Count: 1526

[2013-05-09 15:31:35]
milo2020 - Posts: 7
Is there a way to make the system assume I would get the price I want? For example, buy entry if E3 > 95.00 should give me 95.01 as soon as any bar has a higher value. This would actually match realistic trading aside from the occasional 1 or 2 ticks of slippage which I would account for on my own.

Right now if I use 'bar based backtest' it gives me the open of the bar that crosses the line (thus giving me a much better price that would be possible, since the open occurs prior to the rest of the bar), while 'replay backtest' fills me 4 to 10 ticks beyond my desired entry point, which I know from my live trading experience is much worse than normal slippage. I would prefer to just get the perfect price and factor in the 1 or 2 potential ticks of slippage on my own.

I did already read this page http://www.sierrachart.com/index.php?l=doc/doc_TradeSimulation.php#TradeSimulationBidAskPrices
[2013-05-09 21:18:37]
Sierra Chart Engineering - Posts: 102801
Make sure you have the Global Settings >> Data/Trade Service Settings >>Intraday Data Storage Time Unit set to 2 seconds or lower. What Data or Trading service are you using?

Also, use a limit order.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2013-05-09 21:18:59
[2013-06-02 20:47:26]
milo2020 - Posts: 7
'Intraday Data Storage Time Unit' is set to 1 second. I am using SC Historical Data. I have tried lmt orders as well as stp lmt orders. No matter what I try, I do not get a realistic fill price during backtesting.

Example: Spreadsheet set to buy if price exceeds horizontal line at 86.91. The bar that exceeds this has a high of 86.98 and closes at 86.96. I have a STP LMT with offset of 1, therefore I should get filled at 86.92 or 86.93. However, I get filled at 86.97. Over the course of hundreds of trades this difference of 5 to 10 ticks renders my backtesting useless.

Am I doing something wrong, or is there no way to have a buy trigger occur in the middle of a bar during backtesting and have the system give me a realistic price instead of a price near the close of that bar? Thanks.
[2013-06-03 23:51:16]
Sierra Chart Engineering - Posts: 102801
The historical data is 1 Minute. This is going to affect the fill prices. You will need to underlying data with a smaller time frame per record.

Refer to this section here for more information:
http://www.sierrachart.com/index.php?l=doc/doc_TradeSimulation.php#TradeSimulationBidAskPrices

I have a STP LMT with offset of 1, therefore I should get filled at 86.92 or 86.93.
What was the order price? You cannot be possibly getting a fill any worse than the Limit price.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2013-06-03 23:51:44

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account