以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 如一天时间内交易5次如何写? (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=67180) |
-- 作者:qq代人发帖 -- 发布时间:2014/7/9 11:33:12 -- 如一天时间内交易5次如何写? 客服:论坛上公式每天交易次数限制,我发现是以主图K线信号来算的,
可是看盘时我要限制主图k线,因为我用的是多笔主图,这样才能运行快点。
限制了k线数量,前面信号就没了不见了,每天交易次数限制就没用了不准了。
有没有别的办法可以限制k线数量时还能限制每天交易次数。如一天时间内交易5次如何写?
[此贴子已经被作者于2014/7/9 11:33:50编辑过]
|
-- 作者:FexTel -- 发布时间:2014/7/9 11:39:43 -- 1,图表是根据历史交易情况处理的。控制在日内把 |
-- 作者:qq代人发帖 -- 发布时间:2014/7/9 11:40:27 -- 图标从图上加载的第一根k线开始计算,图上的k线数量限制不能影响正常交易 一天内交易5次,用全局变量做下限制 VARIABLE:n:=0; |
-- 作者:平淡啊 -- 发布时间:2014/7/9 12:08:12 -- 这样啊,我再看看,看准点 |
-- 作者:平淡啊 -- 发布时间:2014/7/9 13:23:59 -- 不行啊,总是不停地开平仓,你帮我看看这样写对了没有?在开多与开空处加入nnf<10. VARIABLE:DUOKONG=0; TSFS:=0; {停损反手,1-反手 0-不反手} ORDVOL:=1; {开仓手数} ZSDS:=2; {止损点数} //以下变量用于移动止盈,,移动止盈只能保证你尽可能稳健盈利,却不能保证盈利最大化,如果不想使用,可是将总开关设置为0 VARIABLE:YDZY=1; {移动止盈总开关,1为开,0为关} VARIABLE:HIGHPRICE=0,LOWPRICE=0; {保存开仓后的最高价、最低价} VARIABLE:DHCDS=2,KHCDS=2; {多、空单回撤点数} VARIABLE:DYLDS=30,KYLDS=30; {多、空单盈利点数,当盈利点数达到这个标准后,如果回撤达到上面的参数值就平仓} VARIABLE:Z3B1:=1; {赚3保1开关} VARIABLE:nnf:=0; DUOKONG:=1; //持有空单 IF HOLDING<0 THEN BEGIN IF 空头平仓 THEN BEGIN //平空单 空平:SELLSHORT(1,0,MARKET),COLORWHITE; END //止损 IF C-ENTERPRICE>=ZSDS THEN BEGIN 空损:SELLSHORT(1,0,MARKET),colorgreen; END //移动止盈 IF YDZY=1 THEN BEGIN //每周期判断是否创新低 IF L<LOWPRICE THEN BEGIN LOWPRICE:=L; END //如果盈利超过10点之后回撤达到3点,就平仓,保住盈利 IF ENTERPRICE-LOWPRICE>=KYLDS THEN BEGIN IF L-LOWPRICE>=KHCDS THEN BEGIN //回撤超过3点 空赢:SELLSHORT(1,0,MARKET); END END END //赚3保1 IF Z3B1=1 THEN BEGIN IF ENTERPRICE-LOWPRICE>=5 THEN BEGIN IF ENTERPRICE-L<=1.2 THEN BEGIN 空保:SELLSHORT(1,0,MARKET),COLORMAGENTA; END END END END //开多单 IF HOLDING=0 THEN BEGIN IF DUOKONG=1 OR DUOKONG=2 THEN BEGIN IF 多头开仓 and time<143000 and nnf<10 THEN BEGIN 多开:BUY(1=1,30%,MARKET),ColorYELLOW; nnf:=nnf+1; if time=CLOSETIME(0) then nnf:=0; HIGHPRICE:=ENTERPRICE; //将开仓价保存到最高价 END END END //持有多单 IF HOLDING>0 THEN BEGIN IF 多头平仓 THEN BEGIN {平多单} 多平:SELL(1,0,MARKET),COLORWHITE; END //多单管理 //止损 IF ENTERPRICE-C>=ZSDS THEN BEGIN 多损:SELL(1,0,MARKET),colorgreen; END //移动止盈 IF YDZY=1 THEN BEGIN //每周期判断是否创新高 IF H>HIGHPRICE THEN BEGIN HIGHPRICE:=H; END //如果盈利超过10点之后回撤达到3点,就平仓,保住盈利 IF HIGHPRICE-ENTERPRICE>=DYLDS THEN BEGIN IF HIGHPRICE-H>=DHCDS THEN BEGIN //回撤超过3点 多赢:SELL(1,0,MARKET); END END END //赚3保1 IF Z3B1=1 THEN BEGIN IF HIGHPRICE-ENTERPRICE>=5 THEN BEGIN IF H-ENTERPRICE<=1.2 THEN BEGIN 多保:SELL(1,0,MARKET),COLORMAGENTA; END END END END //开空单 IF HOLDING=0 THEN BEGIN IF DUOKONG=1 OR DUOKONG=3 THEN BEGIN IF 空头开仓 and time<143000 and nnf<10 THEN BEGIN 空开:BUYSHORT(1=1,30%,MARKET),colorgreen; nnf:=nnf+1; if time=CLOSETIME(0) then nnf:=0; LOWPRICE:=ENTERPRICE; END END END //日内平仓 IF TIME>=150500 THEN BEGIN 收盘平多:SELL(1,HOLDING,MARKET); 收盘平空:SELLSHORT(1,HOLDING,MARKET); END |
-- 作者:平淡啊 -- 发布时间:2014/7/9 13:26:51 -- /开多单 IF HOLDING=0 THEN BEGIN IF DUOKONG=1 OR DUOKONG=2 THEN BEGIN IF 多头开仓 and time<143000 and nnf<10 THEN BEGIN 多开:BUY(1=1,30%,MARKET),ColorYELLOW; nnf:=nnf+1; if time=CLOSETIME(0) then nnf:=0;//这里对了没有 HIGHPRICE:=ENTERPRICE; //将开仓价保存到最高价 /开空单 IF HOLDING=0 THEN BEGIN IF DUOKONG=1 OR DUOKONG=3 THEN BEGIN IF 空头开仓 and time<143000 and nnf<10 THEN BEGIN 空开:BUYSHORT(1=1,30%,MARKET),colorgreen; nnf:=nnf+1; if time=CLOSETIME(0) then nnf:=0; LOWPRICE:=ENTERPRICE; END [此贴子已经被作者于2014/7/9 13:27:34编辑过]
|
-- 作者:平淡啊 -- 发布时间:2014/7/9 13:29:53 -- 简单点,帮写完整这个吧。开空+开多仓=10次一天。 bb:ema(c,5),linethick3; cc:ema(c,25),COLORMAGENTA,linethick3; KD:=cross(bb,cc); //开多条件 PD:=bb<cc and c<cc; //平多条件 KK:=cross(cc,bb); //开空条件 PK:=bb>cc and c>cc; //平空条件 平空:SELLSHORT(PK,1,THISCLOSE); //平空信号 开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号 平多:SELL(PD,1,THISCLOSE); //平多信号 开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号 |
-- 作者:FexTel -- 发布时间:2014/7/9 13:37:06 -- 1,输出下NNF的值,看下每次交易后值是不是递增的 2,另外交易的是什么品种?time取值是否正常 |