商品為rb2110,數據源0為5分鐘周期,數據源1為1小時周期,在5分鐘周期交易;1小時周期金叉開多、死叉開空。開空所在的1小時周期內如果出場則依舊以1小時周期的死叉條件進場,實測發現死叉若13:55出場,下一個1小時周期正好金叉,會發生閃爍;下面附圖和策略代碼
?
//------------------------------------------------------------------------
//1.5分鐘周期
//2.60分鐘周期
Params
?? ?Numeric fast_window(5);// 快速均線
?? ?Numeric slow_window(20);// 慢速均線
Vars
?? ?Natural Series<Numeric> fast_ma;
?? ?Natural Series<Numeric> slow_ma;
Events
?? ?OnBarOpen(ArrayRef<Integer> indexs){
?? ??? ?Range[1:1]{
?? ??? ??? ?fast_ma=AverageFC(Close[1],fast_window);
?? ??? ??? ?slow_ma=AverageFC(Close[1],slow_window);
?? ??? ?}
?? ?}
?? ?OnBar(ArrayRef<Integer> indexs){
?? ??? ?Range[0:0]{
?? ??? ??? ?If(Data[1].CurrentBar>slow_window){
?? ??? ??? ??? ?PlotNumeric("快線",Data[1].fast_ma,0,Yellow,0);
?? ??? ??? ??? ?PlotNumeric("慢線",Data[1].slow_ma,0,Cyan,0);
?? ??? ??? ??? ?If(MarketPosition==0){
?? ??? ??? ??? ??? ?If(Data[1].fast_ma>Data[1].slow_ma&&Data[1].fast_ma[1]<Data[1].slow_ma[1]){
?? ??? ??? ??? ??? ??? ?Buy(1,Open);
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?If(Data[1].fast_ma<Data[1].slow_ma&&Data[1].fast_ma[1]>Data[1].slow_ma[1]){
?? ??? ??? ??? ??? ??? ?SellShort(1,Open);
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}Else If(MarketPosition==1&&BarsSinceEntry>4){
?? ??? ??? ??? ??? ? Sell(0,Open);
?? ??? ??? ??? ?}Else If(MarketPosition==-1&&BarsSinceEntry>4){
?? ??? ??? ??? ??? ?BuyToCover(0,Open);
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ?}
?
?
函數?
?來源:CXH99.COM
看代碼好像看不出來哪里閃爍了 麻煩提供一下日志 如果自動運行發生閃爍了 日志里會提示的
?