以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (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=185050) |
-- 作者:小白在线 -- 发布时间:2021/4/6 21:17:11 -- 麻烦帮我看一下怎么修改公式 思路是M1和M3是两条均线,5天和10天,两线相交就开多单或空单,有一个止盈止损,就是成交量相对大的话就先平仓,观看, 这里有个问题: 比如现在这条K线的成交量符合条件,能不能过一条K线再平仓,如图,就是直接在当条K线就平了,最好就是在下一条K线再平仓,公式要怎么写?或者是两条k线也行 //开多单条件 dd:=cross(m1,m3); IF dd THEN begin sellshort(holding<0,0,limitr,c); buy(holding=0,1,limitr,c); END; //止盈止损条件 ccc:=ref(hhv(vol,40),1); ll:=ccc*0.8<=vol; if ll then BEGIN sell( holding>0,0,LIMITR,c); sellshort(holding<0,0,limitr,c);//成交量较大就平仓 end;
//开空单条件 kk:=cross(m3,m1); if kk THEN begin sell(holding>0,0,limitr,c); buyshort(holding=0,1,limitr,c); END ;
|
-- 作者:FireScript -- 发布时间:2021/4/7 9:02:21 -- 这里改下就行了。用ref回溯到上一个K,如果上一个K满足当前K就出信号。 if ref(ll,1) then BEGIN sell( holding>0,0,LIMITR,c); sellshort(holding<0,0,limitr,c);//成交量较大就平仓 end;
另外就是实际交易时候你如果是走完K,其实就用ll也行。因为走完K 就是当前K走完了,次根K刚开始时候直接下单。 虽然信号是显示在上一个K,实际下单时机是在当前K开始时候。 |