需要帮助的地方有:1‘在股票自动交易中好用,并且可修改的,我有多少钱,每次买多少股,卖多少,可以设定,还有就是这公式涨停的时候信号就有问题,涨停价还卖。
2,我是初学者,希望给每句话的后面加一个详细的注解。
3,请帮助优化一下,给点建议,谢谢。
现在是交易型号不执行。
//runmode:0;
input:p(70,5,90,5);//period数据周期类型
//input:initialstop(2,0,3,1),coststop(2,1,3,1),trailingstop(3,1,6,1);
//input:money(0,0,10,1);
//input:slippage(1,0,1,1);
//input:debug(0,0,1,1);
variable:myasset=500000;
variable:costprice=0,stopline=0;
begin
if stricmp(marketlabel,'sh')=0 then begin
commission:=0.001;
stamptax:=0.001;
transferfee:=0.001;
end
if stricmp(marketlabel,'sz')=0 then begin
commission:=0.001;
stamptax:=0.001;
transferfee:=0;
end
topband:=ref(hhv(high,period),1)+mindiff;
atr:=ref(ma(tr,10),1),noaxis;
initialstopnum:=trimprice(initialstop*atr);
coststopnum:=trimprice(coststop*atr);
trailingstopnum:=trimprice(trailingstop*atr);
slippagenum:=slippage*mindiff;
end
if holding=0 then begin
price:=0;
lots:=0;
if barpos>=period and high>=topband then
price:=close+slippagenum;
if price>0 then begin
mycash:=0.3*cash(0);
lots1:=intpart(mycash/(price*volunit))*volunit;
if money=0 then begin
lots:=lots1;
end else begin
lots2:=intpart(mycash*0.01*money/(initialstopnum*volunit))*volunit;
lots:=min(lots1,lots2);
end
end
if lots>=1 then begin//开多
buy(1,lots,limitr,price); //开仓距离
if workmode=1 then
buy(1,lots,limitr,price);
end
end
if holding>0 then begin
price:=0;
lots:=holding;
if initialstop>0 then begin
if stopline>0 and low<=stopline then
price:=close-slippagenum;
if stopline=0 then begin
costprice:=trimprice((enterprice*(1+commission)+2*transferfee)/(1-commission-stamptax))+mindiff;
stopline:=costprice-initialstopnum;
end
if stopline<costprice and high-coststopnum>=costprice then
stopline:=costprice;
if stopline>=costprice and high-trailingstopnum>stopline then
stopline:=high-trailingstopnum;
end
if price>0 then begin
sell(1,lots,limitr,price);//平多
costprice:=0;
stopline:=0;
myasset:=asset;
if workmode=1 then
sell(1,lots,market,price);
end
end
partline(debug=1 and holding=0,topband,colorred,1),noaxis;
if initialstop>0 then begin
if holding>0 then begin
drawicon(stopline<costprice,stopline,11);
drawicon(stopline=costprice,stopline,12);
drawicon(stopline>costprice,stopline,10);
end
end
交易总数:totaltrade,colorwhite,linethick0;
胜率:PERCENTWIN,LINETHICK0;
连亏:MAXSEQLOSS,LINETHICK0;
连赢:MAXSEQWIN,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
盈亏:asset-1000000,noaxis,colorred,linethick1;