外汇博客 发表于 2011-11-5 08:08:07

关于根据布林通道下单,希望斑竹大大们,帮看下

基本思路就是超过布林上下限进行开平。于是直接使用了布林通道指标
但是在复盘模型里发现每个K线都进行了操作,并没有按照基本的思路进行操作。

请帮忙看下,解释下这是什么原因。
另外当takeprofit为10的时候,没办法下单
显示的OrderSend 出现为130的错误代码。

//+------------------------------------------------------------------+
//|                                                 通道1 指标改.mq4 |
//|                     Copyright ?2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright \"Copyright ?2009, MetaQuotes Software Corp.\"
#property link      \"http://www.metaquotes.net\"
extern double volume = 0.1;//默认交易量
extern int stoploss = 500;//止损
extern int takeprofit = 20;//止赢
extern int slippage = 1;//滑点
extern int magic = 0;//EA标识码
datetime last_t = 0;//用来防止同一信号位置重复进行交易
//---- indicator parameters
extern int    BandsPeriod=20;
extern int    BandsShift=0;
extern double BandsDeviations=2.0;
//---- buffers
double MovingBuffer[];
double UpperBuffer[];
double LowerBuffer[];

//+------------------------------------------------------------------+
//| expert initialization function                                 |
//+------------------------------------------------------------------+
int init()
    {
//----
   
//----
   return(0);
    }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
    {
//----
   
//----
   return(0);
    }
//+------------------------------------------------------------------+
//| expert start function                                          |
//+------------------------------------------------------------------+
int start()
    {
   int    i,k,counted_bars=IndicatorCounted();
   double deviation;
   double sum,oldval,newres;
//----
   if(Bars=i)
          {
         newres=Close-oldval;
         sum+=newres*newres;
         k--;
          }
      deviation=BandsDeviations*MathSqrt(sum/BandsPeriod);
      UpperBuffer<i>=oldval+deviation;
      LowerBuffer<i>=oldval-deviation;
      i--;
       }
      
      if (Low< LowerBuffer&& Time>last_t)
      {
          OrderSend(Symbol(), OP_BUY, volume, MarketInfo(Symbol(), MODE_ASK), slippage, MarketInfo(Symbol(), MODE_ASK)-stoploss*MarketInfo(Symbol(), MODE_POINT), MarketInfo(Symbol(), MODE_ASK)+takeprofit*MarketInfo(Symbol(), MODE_POINT), \"\", magic, 0, CLR_NONE);
          last_t = Time;
      }
      else if (High> UpperBuffer&& Time>last_t)
      {
          OrderSend(Symbol(), OP_SELL, volume, MarketInfo(Symbol(), MODE_BID), slippage, MarketInfo(Symbol(), MODE_BID)+stoploss*MarketInfo(Symbol(), MODE_POINT), MarketInfo(Symbol(), MODE_BID)-takeprofit*MarketInfo(Symbol(), MODE_POINT), \"\", magic, 0, CLR_NONE);
          last_t = Time;
      }
      
   return(0);
    }
//+------------------------------------------------------------------+

vivi 发表于 2012-11-22 00:28:10

资金量设置的是10000美元啊,

光辉岁月 发表于 2012-11-22 00:02:14

先看看怎么样!

醉卧花丛 发表于 2012-11-22 00:02:14

我来看看!谢谢

win8 发表于 2012-11-22 00:28:10

谢谢分享

越野车 发表于 2012-11-22 00:28:10

顶你一下.

门神 发表于 2012-11-22 00:28:10

不错!

怨女 发表于 2012-11-22 00:28:10

支持你就顶你

情人日记 发表于 2012-11-22 00:28:10

这贴子你会收藏吗

qq12615987 发表于 2012-11-22 00:28:10

…没我说话的余地…飘走
页: [1] 2
查看完整版本: 关于根据布林通道下单,希望斑竹大大们,帮看下