Rss & SiteMap

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

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

标题:编写求助

1楼
an8885 发表于:2020/6/25 16:53:11
A:=REF(O,TODAYBAR);        //取当天的开盘价
B:=IF(TODAYBAR>120,REF(C,TODAYBAR-120),DRAWNULL);    //取当天的第24根K线的收盘价

//开仓条件
DKTJ:=A<B;
KKTJ:=A>B;

variable:cs=0;//定义全局变量开仓次数为cs

//开多
if DKTJ and holding=0 and cs<=1 then 
begin
buy(1,1,MARKETR);
cs=cs+1;
end


//止损
IF AVGENTERPRICE-C>10*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END


//开空
if KKTJ and holding=0 and cs<=1 then 
begin
buyshort(1,1,MARKETR);
cs=cs+1;
end




//收盘前平仓

t1:=timetot0(dynainfo(207));
t2:=timetot0(closetime(0));
tt:=t2-t1;
if (islastbar and t2-t1<=30) or (not(islastbar) and time=closetime(0))  then begin
 sellshort(1,0,THISCLOSE);
 sell(1,0,THISCLOSE);
end

if time=closetime(0) then cs:=0;//收盘重置开仓次数


系统设置是这样的  

 在1分钟的周期里  ,用夜盘判断方向   9点开盘开仓,设置一个固定的止损,然后等到收盘平仓,每天只开仓一次。

1、现在的问题是固定止损之后  ,然后又有开仓信号  这个固定止损怎么设置???止损之后就不再开仓了,等次交易日满足在开。

2、止损的数值能不能用M1表示,后边能优化这个止损参数???

3、设置了全局开仓变量,但止损后,还是有开仓信号???

谢谢

2楼
FireScript 发表于:2020/6/28 9:13:52
1.
 variable:cs=0;//定义全局变量开仓次数为cs

//开多
if DKTJ and holding=0 and cs<1 then
begin
buy(1,1,MARKETR);
cs:=cs+1;
end


//止损
IF AVGENTERPRICE-C>10*MINDIFF THEN BEGIN
止损:SELL(1,HOLDING,MARKET);
END


//开空
if KKTJ and holding=0 and cs<1 then
begin
buyshort(1,1,MARKETR);
cs:=cs+1;
end

这几个地方你改下看下。


2.止损的点数你可以设置成INPUT输入的参数。
3楼
an8885 发表于:2020/6/29 10:38:25
谢谢
共3 条记录, 每页显示 10 条, 页签: [1]


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