Rss & SiteMap

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

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

标题:补充程序 显示未编译

1楼
f三年 发表于:2018/11/8 9:38:50
请老师帮忙   把程序止损1N    补完整  参考     刚刚自己补   金字塔显示未编译  

TR=Max(H-L,H-PDC,PDC-L)
其中:
      TR=真实波幅
      H=当日最高价
      L=当日最低价
      PDC=前一日收盘价

N(即ATR)的计算公式如下(其实就):
前面20天的TR值平均
绝对波动幅度=N*合约每一点所代表的价值
头寸规模单位n=账户的1%/绝对波动幅度
开仓时机:当五日均线>十日均线  且  五日均线>二十日均线 开仓n手做多
当五日均线<十日均线时,平仓
 当五日均线<十日均线  且  五日均线<二十日均线 开仓n手做空
当五日均线>十日均线时,平仓
止损为1N



 PDC:REF(C,1);
TR1:MAX(h-l,max(h-PDC,PDC-L));
ATR:MA(TR1,20);

绝对波动幅度:ATR*Multiplier;
手数:TASSET*0.01/绝对波动幅度;
ma5:ma(c,5);
ma10:ma(c,10);
ma20:ma(c,20);
buycond1:ma5>ma10 and ma5>ma20;//这种开仓条件可能会持续N个周期都能保持,会导致连续多个周期下单,直到条件不满足为止。
sellcond1:ma5<ma10;

buycond2:ma5<ma10 and ma5<ma20;
sellcond2:ma5>ma10;

if BUYCOND1 and tholding=0 then tbuy(1,手数,MKT);
if sellcond1 then tsell(1,tholding,mkt);

if BUYCOND2 and tholding=0 then tbuyshort(1,手数,MKT);
if sellcond2 then tsellshort(1,tholding,mkt);





2楼
FireScript 发表于:2018/11/8 9:45:59
你编译下看下报错情况。这段代码我本地编译正常。
3楼
f三年 发表于:2018/11/8 9:50:00
 PDC:REF(C,1);
TR1:MAX(h-l,max(h-PDC,PDC-L));
ATR:MA(TR1,20);

绝对波动幅度:ATR*Multiplier;
手数:TASSET*0.01/绝对波动幅度;
ma5:ma(c,5);
ma10:ma(c,10);
ma20:ma(c,20);
buycond1:ma5>ma10 and ma5>ma20;//这种开仓条件可能会持续N个周期都能保持,会导致连续多个周期下单,直到条件不满足为止。
sellcond1:ma5<ma10;

buycond2:ma5<ma10 and ma5<ma20;
sellcond2:ma5>ma10;

if BUYCOND1 and TBUYHOLDING(1)=0 then tbuy(1,手数,MKT);
if sellcond1 then tsell(1,TBUYHOLDING(1),mkt);

if BUYCOND2 and TSELLHOLDING(1)=0 then tbuyshort(1,手数,MKT);
if sellcond2 then tsellshort(1,TSELLHOLDING(1),mkt);

if TBUYHOLDING(1)>0 and c<DYNAINFO(211)-绝对波幅 then tsell(pd,TBUYHOLDING(1),mkt);
if TSELLHOLDING(1)>0 and c>DYNAINFO(211)+绝对波幅 then tsellshort(pk,TSELLHOLDING(1),mkt);
4楼
FireScript 发表于:2018/11/8 9:51:47
 
图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

名称错了,这种低级错误,直接按照编译提示的错误去排查即可。
5楼
f三年 发表于:2018/11/8 9:57:10
这样呢


PDC:REF(C,1);
TR1:MAX(h-l,max(h-PDC,PDC-L));
ATR:MA(TR1,20);

绝对波动幅度:ATR*Multiplier;
手数:TASSET*0.01/绝对波动幅度;
ma5:ma(c,5);
ma10:ma(c,10);
ma20:ma(c,20);
buycond1:ma5>ma10 and ma5>ma20;//这种开仓条件可能会持续N个周期都能保持,会导致连续多个周期下单,直到条件不满足为止。
sellcond1:ma5<ma10;

buycond2:ma5<ma10 and ma5<ma20;
sellcond2:ma5>ma10;

if BUYCOND1 and TBUYHOLDING(1)=0 then tbuy(1,手数,MKT);
if sellcond1 then tsell(1,TBUYHOLDING(1),mkt);

if BUYCOND2 and TSELLHOLDING(1)=0 then tbuyshort(1,手数,MKT);
if sellcond2 then tsellshort(1,TSELLHOLDING(1),mkt);

if cross(atr,tr1) then tsell(1,TBUYHOLDING(1),mkt);
if cross(tr1,atr) then tsellshort(1,TSELLHOLDING(1),mkt);
6楼
FireScript 发表于:2018/11/8 10:01:11
 编译通过就可以了。
7楼
f三年 发表于:2018/11/8 10:26:20
老师帮我检查下是不是这样表达  止损 1N 的
回撤太大的情况下  正常是控制仓位 还有什么办法吗   
8楼
FireScript 发表于:2018/11/8 10:28:22
 “ 止损 1N 的”你这里到底是要如何止损呢?这样表述我不是很明白的。
9楼
f三年 发表于:2018/11/8 10:45:08
 止损为1N   N(即ATR)的计算公式如下(其实就):
前面20天的TR值平均       TR=真实波幅     跟今天开盘没有关系   就是开盘前面的20天的TR值平均 


10楼
FireScript 发表于:2018/11/8 11:09:17
 提供你的止损逻辑,我不是要你解释N1是什么。我是要知道, 你用这个怎么参与到止损逻辑里的。
共10 条记录, 每页显示 10 条, 页签: [1]


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