wangwxj 发表于 2016-7-31 09:59:52

我开发的半自动趋势跟踪程序

原理是这样的,我自己手工开仓,由计算机自动跟踪趋势平仓,希望大神指点:):handshake


Params   
   Numeric M(5);
   Numeric N(10);
GlobalVars

Vars
   NumericSeries MA1;
   NumericSeries MA2;
   Bool Con1;
Bool Con2;
Begin
   MA1 = ema(Close,M); //求M周期收盘价均线
   MA2 = ema(Close,N); //求N周期收盘价均线
   PlotNumeric("MA5",MA1);//绘制均线MA1
   PlotNumeric("MA10",MA2);//绘制均线MA2

    Print(A_SellPosition);//监视用
    Print(A_BuyPosition);//监视用

Con1 = CrossOver(MA1,MA2);//判断MA1是否上穿MA2
if (Con1)
{
   if (A_SellPosition>0) //有没有持卖
{
   A_SendOrder(Enum_Buy,Enum_Exit,1,Q_AskPrice); //平卖仓
}

}

Con2 = CrossOver(MA2,MA1);//判断Ma2是否下穿MA1
if (Con2)
{
   if (A_BuyPosition>0)
{
   A_SendOrder(Enum_Sell,Enum_Exit,1,Q_AskPrice);//平买仓
}

}
End

wangwxj 发表于 2016-7-31 12:31:10

更新一下

Params   
   Numeric M(5);
   Numeric N(10);
GlobalVars
   Numeric lastOpenPrice(0);
Vars
   NumericSeries MA1;
   NumericSeries MA2;
   Bool Con1;
Bool Con2;
Begin
   MA1 = ema(Close,M); //求M周期收盘价均线
   MA2 = ema(Close,N); //求N周期收盘价均线
   PlotNumeric("MA5",MA1,blue);//绘制均线MA1
   PlotNumeric("MA10",MA2,blue);//绘制均线MA2
   Con1 = CrossOver(MA1,MA2);//判断MA1是否上穿MA2

Print(A_SellPosition);
Print(A_BuyPosition);
if (Con1)
{
   if (A_SellPosition>0 && A_SellPositionCanCover!=0 ) //有没有持卖
{
   A_SendOrder(Enum_Buy,Enum_Exit,1,Q_AskPrice);
}
}
   
Con2 = CrossOver(MA2,MA1);//判断Ma2是否下穿MA1
if (Con2)
{
   if (A_BuyPosition>0 && A_BuyPositionCanCover!=0)
{

   A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice);
}

}
End

1066313592 发表于 2016-8-10 12:28:13

能不能帮忙解决一下问题。
页: [1]
查看完整版本: 我开发的半自动趋势跟踪程序