再一次,这是关于永恒的:趋势/平坦。 - 页 13

 
Andrey Dik:

好的

如果你不介意,请给我们看一张图表的截图,这样我们就能看到我们在说什么。

//+------------------------------------------------------------------+
//|                                                  Flat_trend.mq5 |
//|                                   Copyright © 2016, prostotrader |
//|                                                  http://mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, prostotrader"
#property link      "http://mql5.com"
#property version   "1.00"
#property description "Flat trend indicator"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
//--- plot Max
#property indicator_label1  "FT"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrYellow
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1
//--- Levels
#property indicator_level1 0
#property indicator_level2 0
#property indicator_levelwidth 1
#property indicator_levelstyle STYLE_DOT
//
input double FTLine = 50; //Граница флэта
//
//--- indicator buffers
double Buff[];
double deals;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
  IndicatorSetInteger(INDICATOR_DIGITS,0);
  IndicatorSetString(INDICATOR_SHORTNAME,"Flat_trend");
  SetIndexBuffer(0,Buff,INDICATOR_DATA);
  ArraySetAsSeries(Buff,true);
  PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,EMPTY_VALUE);
//---
  IndicatorSetInteger(INDICATOR_LEVELCOLOR, 0, clrRed );
  IndicatorSetInteger(INDICATOR_LEVELCOLOR, 1, clrRed );
  IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, FTLine );
  IndicatorSetDouble(INDICATOR_LEVELVALUE, 1, -FTLine );  
  IndicatorSetDouble( INDICATOR_MAXIMUM, 105 );
  IndicatorSetDouble( INDICATOR_MINIMUM, -105 );
//---
  return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator Get all deals                                   |
//+------------------------------------------------------------------+
double GetDeals(const string a_symbol, const datetime start, const datetime end)
{
  MqlTick ticks[];
  int buy_deal = 0;
  int sell_deal = 0;
  ulong a_end = ulong(end) * 1000;
  ulong a_start = ulong(start) * 1000;
  int result = CopyTicks(a_symbol, ticks, COPY_TICKS_TRADE, a_start, 0);
  if (result > 0 )
  {
    for(int i =0; i<result; i++)
    {
      if (ulong(ticks[i].time_msc) <= a_end)
      {
        if((ticks[i].flags &TICK_FLAG_BUY)==TICK_FLAG_BUY) buy_deal++;
        if((ticks[i].flags &TICK_FLAG_SELL)==TICK_FLAG_SELL) sell_deal++;
      }
    }
      return(double(buy_deal-sell_deal));
  }
  return( 0 );
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const int begin,
                const double &price[])
{
  datetime times[];
  datetime end;
  int result = CopyTime(Symbol(), PERIOD_CURRENT, 0, 1, times);
  if (result==1)
  {
    end = TimeTradeServer();
    deals = GetDeals(Symbol(), times[0], end);
  }
//---    
  if (prev_calculated==0)
  {
    ArrayInitialize(Buff, 0);
    Buff[0] = deals;
  }
  else
  {
    int a_diff = rates_total - prev_calculated;
    if (a_diff > 1)
    {
      for (int i = 1; i<(rates_total - a_diff-1); i++)
      {
        Buff[i] = Buff[i+1];
      }
    }
    Buff[0] = deals;
  }
//--- return value of prev_calculated for next call
  return(rates_total);
}
//+------------------------------------------------------------------+
 

好的指标,简单而有品味!标记非常均匀,简直令人惊讶。

 
Andrey Dik:

好的指标,简单而有品味!标记非常均匀,简直令人惊讶。

 
prostotrader:

嗯...你有一个更欢快的画面,一个生动的画面。

但说真的,这说明了什么?现在是什么,T还是F?

 
prostotrader:
一个是关于托马斯的,另一个是关于埃雷米亚的)。一个图表上有外汇,它从来没有这样的信息,另一个图表上有FORTS。两个大的区别)。
 
Yuriy Asaulenko:
一个是关于托马斯的,另一个是关于耶利马的)。在一个图表中,有外汇,它从来没有这样的信息,而在另一个图表中,有FORTS。两个大的区别)。

你不能用你的头脑思考吗?

在这种情况下,FORTS或FOREX有什么区别?

 
Yuriy Asaulenko:
一个是关于托马斯的,另一个是关于埃雷米亚的)。一张图上有Forex,它从来没有这样的信息,另一张图上有FORTS。两个大的区别)。

Aaaa....那么这一切都有意义了!趋势在哪里,平坦在哪里,已经立即变得很清楚了....。请不要让我笑。

堡垒、外汇或巴巴-马尼的科托菲尔交易所,这有什么区别?图表中显示的卖家和买家的比例之间的关联性在哪里?

有人说 "但你不会找到一个更好的平坦/趋势的定义",所以这就是我想问的,指标在哪里显示?

休斯顿,进来吧,我们已经被打败了......

 
Andrey Dik:

Aaaa....那么这一切都有意义了!趋势在哪里,平坦在哪里,已经立即变得很清楚了....。请不要让我笑。

堡垒、外汇或巴巴-马尼的科托菲尔交易所,这有什么区别?图表中显示的卖家和买家的比例之间的关联性在哪里?

有人说 "但你不会找到一个更好的平坦/趋势的定义",所以这就是我想问的,指标在哪里显示?

休斯顿,进来吧,我们已经被打败了......

正文....

 
prostotrader:
正是从医院....

别担心,这是不符合主题的。

你已经展示了代码,非常好!但指标显示的是什么?解释一下,显示指标和图表上的区域之间的对应关系。我想看看--指标显示持平,我们看一下图表--嗯,真的持平了!"。

该指标很好,很美,但它除了显示3条水平虚线 外,什么也没有。也许这背后有一个非常深刻但隐藏的意义,我没有看到。请帮助我理解。

 
Andrey Dik:

别担心,这是不符合主题的。

你已经展示了代码,非常好!但指标显示的是什么?解释一下,显示指标和图表上的区域之间的对应关系。我想看看--指标显示持平,我们看一下图表--嗯,真的持平了!"。

该指标很好,很美,但它除了显示3条水平虚线 外,什么也没有。也许这背后有一个非常深刻但隐藏的意义,我没有看到。请帮助我理解。

所以你的账户里没有交易表。

这就是为什么CopyTicks也不显示交易。