[MT4指标]一个胜率90%的公式,请高手写成MT4的指标大家分享
日图
4小时图  
周图 
  使用很简单,用一段时间体会后相信会帮你赚钱的。
此公式我一直在其他软件上用,感觉很好。MT4我不懂,请高手把它编成
MT4的指标,供大家分享。公式翻译成中文如下:
数据1:X1=21个周期内的开盘价的最高价;
数据2:X2=7个周期内的开盘价的最低价;
数据3:X3=(X1+X2)/ 2 ;
数据4:Y=X3 - 收盘价(在盘中指最新价);
当Y>0.00001 时,画阴线。
当Y<0.00001时, 画阳线。
要求最好在主图中画出k线图,不是在指标区域。
当阴线变阳线或阳线变阴线时,声音报警。
[ 本帖最后由 fycfw 于 2008-9-28 23:26 编辑 ] 5.jpg
5.jpg 4.jpg
4.jpg 3.jpg
3.jpg
 5.jpg
5.jpg 4.jpg
4.jpg 3.jpg
3.jpg发表于:2008-10-04 05:17只看该作者
2楼 
东西不错,不知道有没有人能改,期待ing
达则兼济天下
穷则独善其身
发表于:2008-10-05 12:58只看该作者
4楼 
帮顶,顶上去
5楼 
本系统可以用于自动交易,或者手动开仓后用于自动跟踪止盈。免去盯盘之苦和过早平仓。
韬客社区www.talkfx.co
6楼 
以下是USDJPA的15分钟图,时间是10月3日到今天11点45分,大家评论一下。
 6.jpg
6.jpg
 6.jpg
6.jpg韬客社区www.talkfx.co
7楼 
现在是12:15,系统显示持有。我今天10:07开空,到现在已有100点了
韬客社区www.talkfx.co
发表于:2008-10-06 07:45只看该作者
8楼 
我试着编了一下,EA测试对于正负过渡时期开仓太灵敏,亏损大于收益。因为用电脑计算的值非常精确的,在结束K线图的时候会产生很多信号,同时对于临界状态无法处理,手动的话会好不少。一会再看看利用上一周期的数据测试结果如何,晚上上结果
9楼 
谢谢,fantasize!期待中。
韬客社区www.talkfx.co
10楼 
15:15,出现信号。平仓。
 8.jpg
8.jpg
 8.jpg
8.jpg发表于:2008-10-06 12:27只看该作者
11楼 
没有添加任何其他附加要求的代码,测试结果感觉在调整期还是不太理想,所以还需要增加移动止损及开仓限制,不然赚的不够亏得,先把最基本的发上来供楼主改进。//+------------------------------------------------------------------+
//|                                                      Mid721.mq4 |
//|                       fantasize
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "fantasize"
extern int Period_1 = 21;
extern double TakeProfit = 200;
extern double Lots = 0.1;
double MA7[3000];
double MA21[3000];
double MA3[3000];
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
 int    counted_bars=IndicatorCounted();
//----
   double High1;
   int cnt, ticket, total;
   int     i,k;
   double  sum;
// initial data checks
// it is important to make sure that the expert works with a normal
// chart and the user did not make any mistakes setting external 
// variables (Lots, StopLoss, TakeProfit, 
// TrailingStop) in our case, we check TakeProfit
// on a chart of less than 100 bars
     if(Period_1 <= 1 )
       return(0);
   if(Bars <= Period_1 )
       return(0);
 //calculate 7 days Min Open .
   i = Bars - Period_1 + 1;
   if(counted_bars > Period_1 - 1) 
     i = Bars - counted_bars - 1;
   while(i >= 0)
     {
        k = i + 7 - 1;
        sum=Open[k];
       while(k >= i)
        {
        
         sum= MathMin(sum,Open[k]);
          k--;
        }
      MA7=sum;
       i--;
     }
 //calculate 21 days Max Open .
   i = Bars - Period_1 + 1;
   if(counted_bars > Period_1 - 1) 
     i = Bars - counted_bars - 1;
   while(i >= 0)
     {
        k = i + 21 - 1;
       sum=Open[k];
       while(k >= i)
        {
        
           sum = MathMax(sum,Open[k]);
          k--;
        }
    MA21=sum;
       i--;
     }   
    
    
    
    //MA3
     i = Bars - Period_1 + 1;
   if(counted_bars > Period_1 - 1) 
     i = Bars - counted_bars - 1;
   //--EMA(VAR1,13)
   while(i >= 0)
     {
       
       MA3 = 0.5*(MA7+MA21)-Close ;
       i--;
     }
 
 //buy and sell   judge
 
   High1=MA3[1];
   
//Alert(MA7[0],MA21[0],MA3[0],Close[0]);
   total=OrdersTotal();
   if(total<1) 
     {  //1
      // no opened orders identified
      if(AccountFreeMargin()<(1000*Lots))
        { //2
         Print("We have no money. Free Margin = ", AccountFreeMargin());
         return(0);  
        }//2
 
      if(High1<0.00001) 
        { //2
  
                   
          ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"macd sample",16384,0,Red);
            
         if(ticket>0)
              {//3
             if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
              }//3
         else Print("Error opening BUY order : ",GetLastError()); 
         
         return(0); 
        }//2
      // check for short position (SELL) possibility
      if(High1>0.00001)
         {//2
   
            ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"macd sample",16384,0,Green);
              
          
         if(ticket>0)
              {//3
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
               }//3
          else Print("Error opening SELL order : ",GetLastError()); 
          return(0); 
         }//2
            
     }//1
   // it is important to enter the market correctly, 
   // but it is more important to exit it correctly...   
     
    for(cnt=0;cnt0.00001 )
                 {//4
                OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
                 return(0); // exit
                 }//4
             
              }//3
           
         else // go to short position
           {//3
            // should it be closed?
            if(High1<0.00001)
             {//4
               OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
               return(0); // exit
              }//4
            
           }//end else  3
          
          }//2
     //   
     }//1
  
   return(0);   
 }
  
   
韬客社区www.talkfx.co
发表于:2008-10-06 12:38只看该作者
12楼 
伪信号和多次开单需要过滤,但是我也不知道多种时间周期如何限制单只K线的操作次数。尝试过提取小时数,但是换周期就不知道怎么做了,摸索中
韬客社区www.talkfx.co
发表于:2008-10-06 13:10只看该作者
13楼 
热心人很多,再顶,希望能出好的公式
韬客社区www.talkfx.co
发表于:2008-10-06 13:26只看该作者
14楼 
楼主,你用的什么软件阿,能否给大伙共享下,(mt4不能用,咱就用你的呗;P
15楼 
fantasize,你好。谢谢你!公式我导入后怎么没反应。你教教我怎么导入,怎么调出图形来,好吗。
韬客社区www.talkfx.co
16楼 
我用的文华,要收费的。并且做外汇没mt4的好。
韬客社区www.talkfx.co
发表于:2008-10-06 14:41只看该作者
17楼 
这个不是公式,直接就是一个EA,不过没有添加移动止损。你先复制源代码,然后利用MT4里的编辑器新建一个智能交易系统,一路确定,然后把里面代码删除,直接粘贴代码再编译就可以了。因为我不知道怎么上传附件,所以智能贴代码 ,:D
韬客社区www.talkfx.co
发表于:2008-10-06 14:54只看该作者
18楼 
按照交易思想编了个指标,对照分析亏损单原因。
 测试.JPG
测试.JPG
 测试.JPG
测试.JPG韬客社区www.talkfx.co
发表于:2008-10-06 15:00只看该作者
19楼 
刚找到上传附件方法,这个是代码的Mq4格式fantasize.rar
韬客社区www.talkfx.co
发表于:2008-10-06 15:20只看该作者
20楼 
添加止损后最新测试结果,灵界状态的亏损吞噬了盈利  
 测试结果.JPG
测试结果.JPG
 测试结果.JPG
测试结果.JPG韬客社区www.talkfx.co































