以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 换个浏览器,重新问 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=62880) |
|
-- 作者:tomato -- 发布时间:2014/3/19 16:15:31 -- 换个浏览器,重新问
|
|
-- 作者:jinzhe -- 发布时间:2014/3/19 16:29:12 -- 除了前面的close改h,close改l的 还要这样改
sellshort(平空条件 and holding<0,holding,market);
buy(开多条件 and holding=0 and exitbars>0,1,market);
sell(平多条件 and holding>0,holding,market);
buyshort(开空条件 and holding=0 and exitbars>0,1,market);
|
|
-- 作者:tomato -- 发布时间:2014/3/19 16:59:01 -- 改完了,信号全没了, ![]() |
|
-- 作者:jinzhe -- 发布时间:2014/3/19 17:07:13 -- input:t(10,1,100,5),d(5);
variable:n=0;
一倍周期开盘价:=ref(open,t),noaxis,nodraw;
两倍周期开盘价:=ref(open,2*t),noaxis,nodraw;
//交易条件
开多条件:=close>ref(open,t) and close>ref(open,2*t) and time<185500;
平多条件:=time=185500 or l<enterprice-d*mindiff;
开空条件:=close<ref(open,t) and close<ref(open,2*t)and time<185500;
平空条件:=time=185500 or h>enterprice+d*mindiff;;
//交易系统
if n=0 and 开多条件 and holding=0 then begin
buy(1,1,market);
n:=1;
end
if n=0 and 开空条件 and holding=0 then begin
buyshort(1,1,market);
n:=1;
end sellshort(平空条件 and holding<0,holding,market);
buy(开多条件 and holding=0 and exitbars>0 and n=1,1,market);
sell(平多条件 and holding>0 ,holding,market);
buyshort(开空条件 and holding=0 and exitbars>0 and n=1,1,market);
|
|
-- 作者:tomato -- 发布时间:2014/3/20 8:13:43 -- 谢谢啦,帮了大忙,赞哦~ |
|
-- 作者:tomato -- 发布时间:2014/3/21 10:49:12 -- 请问版主,这么改的程序为什么有两个buy和buyshort发单动作 if n=0 and 开多条件 and holding=0 then begin
buy(1,1,market);
n:=1;
end
if n=0 and 开空条件 and holding=0 then begin
buyshort(1,1,market);
n:=1;
end sellshort(平空条件 and holding<0,holding,market);
buy(开多条件 and holding=0 and exitbars>0 and n=1,1,market);
sell(平多条件 and holding>0 ,holding,market);
buyshort(开空条件 and holding=0 and exitbars>0 and n=1,1,market); |
|
-- 作者:lichenghu -- 发布时间:2014/3/21 11:04:17 -- 一个开平仓条件也是可以的,您试试
input:t(10,1,100,5),d(5);
一倍周期开盘价:=ref(open,t),noaxis,nodraw;
两倍周期开盘价:=ref(open,2*t),noaxis,nodraw;
//交易条件
开多条件:=close>ref(open,t) and close>ref(open,2*t) and time<185500;
平多条件:=time=185500 or l<enterprice-d*mindiff;
开空条件:=close<ref(open,t) and close<ref(open,2*t)and time<185500;
平空条件:=time=185500 or h>enterprice+d*mindiff;;
sellshort(平空条件 and holding<0,holding,market);
buy(开多条件 and holding=0,1,market);
sell(平多条件 and holding>0 ,holding,market);
buyshort(开空条件 and holding=0 ,1,market);
[此贴子已经被作者于2014/3/21 11:13:00编辑过]
|
|
-- 作者:tomato -- 发布时间:2014/3/21 11:15:28 -- 如果这么写 信号就差好多,请问这里设置的全局变量n的作用是什么 |
|
-- 作者:lichenghu -- 发布时间:2014/3/21 11:18:19 -- exitbars>0 这个影响的,这个导致您开平仓信号不会出现在同一根K线上
如果您要不在同一根k线开平仓,就是用原始的代码。 |