以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=167373)

--  作者:一代天骄
--  发布时间:2018/12/27 10:27:12
--  资金回撤的问题
IF (HHV(ASSET,BARPOS)-ASSET)/HHV(ASSET,BARPOS)>0.15  THEN
   BEGIN
   SELL(HOLDING>0,0,LIMIT,CLOSE-3*MINDIFF),IGNORECHECKPRICE;
   SELLSHORT(HOLDING<0,0,LIMIT,CLOSE+3*MINDIFF),IGNORECHECKPRICE;
   DRAWTEXT(1,LOW ,"到最大回撤幅度,已停止交易,请修改策略",COLORRED);
END
要表达的是回撤15%停止交易,好像在图表上回撤了15%还是继续交易

--  作者:FireScript
--  发布时间:2018/12/27 10:39:01
--  
 你这个限制好像只是设置平仓条件了吧。你这代码意思是回撤15%平仓,但是也没有限制到开仓啊。
--  作者:一代天骄
--  发布时间:2018/12/27 11:20:53
--  
那能够怎么表达才能比较简洁合理,不管在任何周期都适用的代码,就是表达回撤15%平仓,不在开新仓,
 highasset:hhv(ASSET,TODAYBAR);

hc:(highasset-ASSET)/highasset>=0.15;

当日以来资金的回撤幅度hc,把这个hc也作为开仓条件的一个判断。
你写的这个代码好像有问题?

--  作者:FireScript
--  发布时间:2018/12/27 11:42:13
--  
 周期都一样啊。上面代码只在日线以上失效。

另外hc返回值就是0 或者1

比如这样

if not(hc) and 开仓条件 then buy();//当日最大资金回撤没有超过15%才允许下单。