以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  回测中固定止损问题  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=185073)

--  作者:2021再出发
--  发布时间:2021/4/7 17:06:28
--  回测中固定止损问题
请问一下,如何在回测实行固定止损,比如我设定亏损10点止损,用MARKET函数平仓但是发现还是以收盘价止损

以亏损10个点止损为例,麻烦老师帮忙写一下多头及空头的固定止损语句,谢谢!

--  作者:FireScript
--  发布时间:2021/4/7 17:25:58
--  
 不用market ,那你就只能用限价指令了。另外你止损判断用的什么价格计算的呢?C吗。如果是用C,那么现在你按照亏损10个点的价格去平仓。这个价格可能一时半会都不会成交。 因为c不可能刚好满足亏损10个点,极有可能已经早就大于10个点的亏损了。你现在按照一个高于C的价格平仓,成交是个问题。 
所以回测时候:
1.你要把判断用L改成C,然后成交放在本周期内。
2.下单改成限价下单。

if AVGENTERPRICE-l>=10*MINDIFF then  sell(1,holding,limitr,AVGENTERPRICE-10*MINDIFF);


上面这个只是照顾回测效果的做法,你实际交易时候 就是直接用c做止损判断,用市价平仓。 代码无法同时兼顾回测和实盘效果的。