Support Board
Date/Time: Sat, 23 Nov 2024 00:53:39 +0000
Backtesting fill prices
View Count: 2151
[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: 104368 |
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: 104368 |
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: