以文本方式查看主题

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

--  作者:关树源
--  发布时间:2018/3/8 9:54:22
--  请老师帮忙修改模型
老师可以帮我把下面这个指标修改成金字塔成交易模型

出现买入信号下一根K线买入平空单反手买入,止损点放在下单前一根最低价,出现卖出信号下一根K线平仓多单反手空,止损点放在下单前一根K线最高点

DRAWTEXT(CROSS(ZIG(3,10),REF(ZIG(3,10),1)),LOW*0.98,\'买入\') , COLORMAGENTA;
DRAWTEXT(CROSS(REF(ZIG(3,10),1),ZIG(3,10)),HIGH*1.02,\'卖出\'),COLORBLUE;

--  作者:关树源
--  发布时间:2018/3/8 9:57:23
--  
(止损不要等K线走完,触碰高低点马上止损)
[此贴子已经被作者于2018/3/8 9:58:11编辑过]

--  作者:gxx978
--  发布时间:2018/3/8 10:09:45
--  

注意:

1、使用固定时间间隔的模式,在出现止损信号时,立即触发

2、以下代码仅供参考,建议先用模拟盘测试运行

 

pkkd:ref(CROSS(ZIG(3,10),REF(ZIG(3,10),1)),1);   //平空开多条件
pdkk:ref(CROSS(REF(ZIG(3,10),1),ZIG(3,10)),1);  //平多开空条件


if pkkd then
  begin
  sellshort(holding<0,holding,market);
  buy(holding=0,1,market);
  end
 
if pdkk then
  begin
  sell(holding>0,holding,market);
  buyshort(holding=0,1,market);
  end
 
if holding>0 and c<ref(low,enterbars+1) then      //多头止损
  sell(1,holding,market);
 
if holding<0 and c>ref(high,enterbars+1) then     //空头止损
  sellshort(1,holding,market);


--  作者:关树源
--  发布时间:2018/3/8 11:17:58
--  
收到,谢谢老师

请帮我再修改一下,
改成买卖信号出现后K线走完模式,包括止损也是等K线走完
出现买入信号下一根K线买入平空单反手买入,止损点放在下单前一根最低价,出现卖出信号下一根K线平仓多单反手空,止损点放在下单前一根K线最高点

--  作者:wenarm
--  发布时间:2018/3/8 11:24:07
--  

这个需求和代码无关,你用走完一根k模式即可。

具有止盈止损功能的,一般都是需要及时触发,所以采用的是固定时间间隔。

[此贴子已经被作者于2018/3/8 11:24:16编辑过]

--  作者:关树源
--  发布时间:2018/3/8 11:32:15
--  
好的
--  作者:关树源
--  发布时间:2018/3/15 17:42:39
--  
老师,麻烦你帮我把图表模型改成后台运行模式模型,谢谢!

pkkd:ref(CROSS(ZIG(3,10),REF(ZIG(3,10),1)),1); //平空开多条件
pdkk:ref(CROSS(REF(ZIG(3,10),1),ZIG(3,10)),1); //平多开空条件

if pkkd then
  begin 
  sellshort(holding<0,holding,market);
  buy(holding=0,1,market);
  end
  
if pdkk then
  begin 
  sell(holding>0,holding,market);
  buyshort(holding=0,1,market);
  end
  
if holding>0 and c<ref(low,enterbars+1) then //多头止损
  sell(1,holding,market);
  
if holding<0 and c>ref(high,enterbars+1) then //空头止损
  sellshort(1,holding,market);

 

--  作者:FireScript
--  发布时间:2018/3/16 8:37:18
--  

其他的可以不变,只要把下单语句替换下即可。 buy替换成tbuy sell替换成tsell  其他几个类似处理。后台下单函数参数不一样,请详细参考下函数使用说明自行尝试下。 然后再有不懂的,可以再继续咨询。


--  作者:关树源
--  发布时间:2018/3/17 21:37:30
--  
后台运行的程序化模型难度比较高,有很多不会修改,还是辛苦老师帮忙修改一下,谢谢老师!
--  作者:FireScript
--  发布时间:2018/3/19 10:16:06
--  

 你那个只要替换几个下单函数即可,其他都不变,建议自行尝试完成。