公式网 股票指标公式源码分享 登录 注册
公式指标平网
未来函数检测
首页 金钻指标 通达信公式 大智慧公式 同花顺公式 文华财经公式 东财通公式 飞狐公式 操盘手公式 其他公式 公式解答 股票软件 股票池
当前位置:→ 公式网 > 其他公式 > 金字塔公式 > 正文 → 正文

金字塔MA交易系统策略

发布时间:2015/10/25 7:26:07  浏览次数:

金字塔公式 金字塔模型策略源码:runmode:0;
input:period(70,5,90,5);
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(1,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
ma1:ma(close,60);
buycond:=ref(cross(close,ma1),1);
topband:=ref(hhv(high,period),1)+mindiff;
atr:=ref(ma(tr,10),1);
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 buycond then
price:=close+slippagenum;
if price>0 then begin
mycash:=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
tbuy(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
tsell(1,lots,limitr,price);
end
end
partline(debug=1 and holding=0,topband,colorred,1);
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
if debug=1 then begin
盈亏:myasset,noaxis,colormagenta;
收益:(myasset-500000)/500000,linethick0;
次数:totaltrade,linethick0;
胜率:percentwin,linethick0;
连亏:maxseqloss,linethick0;
连赢:maxseqwin,linethick0;
end

复制上述代码粘贴到到公式管理器

输出RUNMODE:0
输出INPUT:周期
 输出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(1,0,1,1)
输出VARIABLE:MYASSET=500000
输出VARIABLE:COSTPRICE=0,STOPLINE=0
 COMMISSION赋值:0.001
 STAMPTAX赋值:0.001
 TRANSFERFEE赋值:0.001
 COMMISSION赋值:0.001
 STAMPTAX赋值:0.001
 TRANSFERFEE赋值:0
输出 END   MA1:收盘价的60日简单移动平均
BUYCOND赋值:昨日收盘价上穿MA1
 TOPBAND赋值:昨日周期日内最高价的最高值+MINDIFF
 ATR赋值:昨日真实波幅的10日简单移动平均
INITIALSTOPNUM赋值:TRIMPRICE(INITIALSTOP*ATR)
 COSTSTOPNUM赋值:TRIMPRICE(COSTSTOP*ATR)
赋值:TRIMPRICE(TRAILINGSTOP*ATR)
 SLIPPAGENUM赋值:SLIPPAGE*MINDIFF
 PRICE赋值:0
 LOTS赋值:0
 PRICE赋值:收盘价+SLIPPAGENUM
 MYCASH赋值:CASH(0)
 LOTS1赋值:MYCASH/(PRICE*VOLUNIT)的整数部分*VOLUNIT
 LOTS赋值:LOTS1
 LOTS2赋值:MYCASH*0.01*MONEY/(INITIALSTOPNUM*VOLUNIT)的整数部分*VOLUNIT
 LOTS赋值:LOTS1和LOTS2的较小值
  END END     逻辑判断 LOTS>=1 THEN BEGIN  BUY(1,LOTS,LIMITR,PRICE)
      逻辑判断 WORKMODE=1 THEN   TBUY(1,LOTS,LIMITR,PRICE)
 PRICE赋值:0
 LOTS赋值:HOLDING
 PRICE赋值:收盘价-SLIPPAGENUM
 COSTPRICE赋值:TRIMPRICE((ENTERPRICE*(1+COMMISSION)+2*TRANSFERFEE)/(1-COMMISSION-STAMPTAX))+MINDIFF
 STOPLINE赋值:COSTPRICE-INITIALSTOPNUM
 STOPLINE赋值:COSTPRICE
 STOPLINE赋值:最高价-TRAILINGSTOPNUM
      END   逻辑判断 PRICE>0 THEN BEGIN  SELL(1,LOTS,LIMITR,PRICE)
 COSTPRICE赋值:0
 STOPLINE赋值:0
 MYASSET赋值:ASSET
     逻辑判断 WORKMODE=1 THEN   TSELL(1,LOTS,LIMITR,PRICE)
  END ENDPARTLINE(DEBUG=1 AND HOLDING=0,TOPBAND,画红色,1)
逻辑判断 INITIALSTOP>0 THEN BEGIN 逻辑判断 HOLDING>0 THEN BEGIN  当满足条件STOPLINE<COSTPRICE时,在STOPLINE位置画11号图标
  当满足条件STOPLINE=COSTPRICE时,在STOPLINE位置画12号图标
  当满足条件STOPLINE>COSTPRICE时,在STOPLINE位置画10号图标
 输出  ENDENDIF DEBUG=1 THEN BEGIN 盈亏:MYASSET,NOAXIS,画洋红色
 输出       收益:(MYASSET-500000)/500000,线宽为0
输出 次数:TOTALTRADE,线宽为0
输出 胜率:PERCENTWIN,线宽为0
输出 连亏:MAXSEQLOSS,线宽为0
输出 连赢:MAXSEQWIN,线宽为0
 END
 

 

资源下载链接   资源大小:unknow

手机移动版 - 关于我们 - 联系我们 - 广告合作 - 下载声明 - 网站帮助 - 友情链接 - 网站地图 - TOP
湘ICP备09016573号-3 增值电信业务经营ICP许可证:湘B2-20210269 湘公网安备43108102000039号
Copyright © GSZX.COM.CN ,All Rights Reserved.
股票公式,股票指标,股票软件,股票知识