開拓者組合的系統(tǒng),如何修改才能實盤自動交易呢?
作者:開拓者 TB 來源:cxh99.com 發(fā)布時間:2012年10月15日
- 咨詢內(nèi)容: 本帖最后由 千牛發(fā)理財工作 于 2012-9-24 12:51 編輯
請高手指點一下我這新手,如何修改才能實盤自動交易呢?
Params
Numeric FilterSet(0.1);//過濾器偏移量
Numeric lots(1);
Numeric terms(10);//自適應(yīng)計算周期
Numeric AMAOffSetPercent(0.55);//前后兩日均線差值觸發(fā)值百分比
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個數(shù)小于計算周期,直接返回
AMAOffSet=AvgPrice()*AMAOffSetPercent/100; //取當(dāng)前均價的0.0055作為均線觸發(fā)值
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 ) //如果前低為零,即沒有產(chǎn)生前低,則直接比較兩日的均線值是否大于觸發(fā)值
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技術(shù)人員: 你的策略中文描述是什么