Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:连续亏损3次和资金回撤4%,停止建仓

1楼
wxx212 发表于:2019/10/22 14:09:36
想实现:连续亏损3次以上或者资金回撤10%,停止程序建仓,如果有仓位,只出场不建仓.资金盈利5¥  或者  连续亏损到10次  或者 连续盈利3次 重新 开启程序 进场
这个要怎么实现

源码如下:

aa:ma(c,100);
bb:ma(c,300);


KD:=cross(c,aa) and c>=bb ;          //开多条件
PD:=cross(aa,c);          //平多条件
KK:=cross(aa,c) and c<=bb;          //开空条件
PK:=cross(c,aa);          //平空条件


平空:SELLSHORT(PK,10,MARKET);                  //平空信号
开多:BUY(KD AND HOLDING=0,1,MARKET);          //开多信号
平多:SELL(PD,1,MARKET);                       //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,MARKET);     //开空信号

资产:asset,noaxis;
2楼
FireScript 发表于:2019/10/22 14:36:20
连亏 这个 可以参考这个例子.
VARIABLE:ct:=0;
aa:=ma(c,5);
bb:=ma(c,10);

KD:=cross(c,aa) and c>=bb ;          //开多条件
PD:=cross(aa,c);          //平多条件
KK:=cross(aa,c) and c<=bb;          //开空条件
PK:=cross(c,aa);          //平空条件

连亏次数:ct;

if pk and holding<0 then
begin
平空:SELLSHORT(PK,10,MARKET);     
ct:=if(NUMPROFIT(1)<0,ct+1,0);
end




开多:BUY(KD AND HOLDING=0 and ct<=3,1,MARKET); 

if pd and holding>0 then
begin
平多:SELL(PD,1,MARKET);//平多信号 
ct:=if(NUMPROFIT(1)<0,ct+1,0);    
end       
//开多信号       
          
开空:BUYSHORT(KK AND HOLDING=0 and ct<=3,1,MARKET);



用的全局变量。但是这里面没有考虑再次进场问题。这个可以你自行尝试下。


3楼
wxx212 发表于:2019/10/22 15:51:51
那么资金回撤4%和重新开启进出场的条件呢,应该怎么弄?
4楼
yukizzc 发表于:2019/10/22 16:08:03
连亏三次后停止建仓,这个时候你本身就停止了建仓
后面开启建仓的条件也都无法满足了,连续盈利、连续亏损10次都和连亏3次是反集
共4 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03516 s, 3 queries.