开拓者组合的系统,如何修改才能实盘自动交易呢? [开拓者 TB]
- 咨询内容: 本帖最后由 千牛發理財工作 于 2012-9-24 12:51 编辑
请高手指点一下我这新手,如何修改才能实盘自动交易呢?
Params
Numeric FilterSet(0.1);//过滤器偏移量
Numeric lots(1);
Numeric terms(10);//自适应计算周期
Numeric AMAOffSetPercent(0.55);//前后两日均线差值触发值百分比
Vars
NumericSeries AMAValue;
Numeric ExtHigh;//前高
Numeric ExtLow;//前低
Numeric filter;
Numeric AMAOffSet;
Bool LongEntryCon(false);
Bool ShortEntryCon(false);
Numeric NextOpen;
Begin
AMAValue = AdaptiveMovAvg(close,terms,2,30);
if(close == AMAValue)
return; //如果bar个数小于计算周期,直接返回
AMAOffSet=AvgPrice()*AMAOffSetPercent/100; //取当前均价的0.0055作为均线触发值
filter = StandardDev(AMAValue,20,2)*FilterSet; //计算过滤器的值
if(AMAValue>AMAValue[1]and AMAValue[1]<AMAValue[2])
ExtLow = AMAValue[1]; //计算前低
if(AMAValue<AMAValue[1]and AMAValue[1]>AMAValue[2])
ExtHigh = AMAValue[1]; //计算前高
if(AMAValue>AMAValue[1]) //如果今天的均线值大于昨天
{
if(ExtLow!=0) //如果前低不为零
{
if((AMAValue - ExtLow)>filter) //将均线值减去最低值,看是否大于过滤器
LongEntryCon = true;
}Else
{
if((AMAValue-AMAValue[1])>AMAOffSet ) //如果前低为零,即没有产生前低,则直接比较两日的均线值是否大于触发值
LongEntryCon = true;
}
}
if(AMAValue<AMAValue[1])
{
if(ExtHigh!=0)
{
if((AMAValue - ExtHigh)>filter)
ShortEntryCon = true;
}Else
{
If((AMAValue[1]-AMAValue)>AMAOffSet )
ShortEntryCon = true;
}
}
Commentary("AMA:"+TEXT(AMAValue));
Commentary("filter:"+TEXT(filter));
Commentary("ExtLow:"+TEXT(ExtLow));
Commentary("ExtHigh:"+TEXT(ExtHigh));
Commentary("LongCon:"+IIFString(LongEntryCon,"true","false"));
Commentary("ShortCon:"+IIFString(ShortEntryCon,"true","false"));
Commentary("AMAOffSet:"+text(AMAOffSet));
if(MarketPosition !=1 and LongEntryCon)
buy(lots,NextOpen);
if(MarketPosition !=-1 and ShortEntryCon)
SellShort(lots,NextOpen);
end
感谢你的光临,非常感谢你的指教! - TB技术人员: 你的策略中文描述是什么
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 262069696 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容