我将免费编写指标 - 页 34

 
Yurij Izyumov:
你不能从fibo中获得数据,它是用0和100水平进行数学计算的。

能否从所画的横线上取数?

例如:蓝色--高点,红色--低点(飞博的100%和0%)。


 

下午好!

请帮助我了解MQL4中的价格是如何显示和使用的。

我想写一个简单的箭头指标,当价格超过博林线时就会输出。

 #property indicator_buffers 2
 //---- цвета индикатора
 #property  indicator_color1 Blue
 #property  indicator_color2 Red
 //---- индикаторные буфферы
 double buf_1[];
 double buf_2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
//---- 2 индикаторных буффера использованы для счёта
 SetIndexBuffer(0, buf_1);
 SetIndexBuffer(1, buf_2);
 //---- Стиль исполнения графика 
 //---- DRAW_ARROW - стрелки(символы)
 SetIndexStyle (0, DRAW_ARROW, STYLE_SOLID, 3);
 SetIndexStyle (1, DRAW_ARROW, STYLE_SOLID, 3);
 SetIndexArrow (0, 233);
 SetIndexArrow (1, 234);
 //---- установка значений индикатора, которые не будут видимы на графике
 SetIndexEmptyValue(0,0.0);
 SetIndexEmptyValue(1,0.0);
 //---- установка номера бара, начиная с которого будет отрисовываться индикатор 
 //SetIndexDrawBegin(0,MA_Slow);
 //SetIndexDrawBegin(1,MA_Slow);
 //---- завершение инициализации
 return (0);

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
 //---- проверка количества баров на достаточность для расчёта
 if (Bars <= 30) return (0);
 //---- получение уже посчитанных баров
 int ExtCountedBars = IndicatorCounted();
 //---- проверка на возможные ошибки
 if (ExtCountedBars < 0) return (-1);
 //---- последний посчитанный бар должен быть пересчитан 
 if (ExtCountedBars > 0) ExtCountedBars--;
 //---- основной цикл расчёта индиатора
 for (int i=Bars - ExtCountedBars-1;i>=0; i--)
 { 
 //---- получение значений индикатора в переменные
 double Bolinger_HIGH = iBands(NULL,0,20,2.5,0,PRICE_CLOSE,MODE_UPPER,0);
 double Bolinger_LOW = iBands(NULL,0,20,2.5,0,PRICE_CLOSE,MODE_LOWER,0);
 
 //---- проверка условий по вашим правилам и отрисовка стрелки
 if (Bolinger_LOW > Low[i]) {
 buf_1[i] = Low[i] - 10 * Point;
 Print("BolLOW = ",Bolinger_LOW,", Low = ",Low[i],".");
 }
 if (Bolinger_HIGH < High[i]) buf_2[i] = High[i] + 10 * Point;
 }
 //---- завершение основной функции
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

其结果是,箭头没有出现在我希望的地方。

我怀疑这与图表上的OHLC价格显示有关。

请帮助我解决这个问题。

 
MMM1972:

能否从所画的横线上取数?

例如,蓝色--高点,红色--低点(分别为飞博的100%和0%)。



我有一个免费的指标,可以画两条线,用它们来做fibo和警报。

 

好人们,告诉我为什么当我想写#属性 indicator_type1 DRAW_COLOR_LINE时,它给出了一个错误的常数预期?

 
sviter-pro:

好心人告诉我,为什么当我想写#属性indicator_type1 DRAW_COLOR_LINE时,会出现预期的错误?


因为DRAW_COLOR_LINE只适用于MT5

 
Yurij Izyumov:

我有一个免费的指标,可以画出两条线,用它们来表示Fibo和Alert。

尤里,你还没有忘记我)。

 

你好!你能否重写一下所附指标的代码,不要创建对象,而是使用缓冲线。指标市场概况 .

附加的文件:
 

下午好!

寻找具有滚动功能的伊兰,即伊兰在正常模式下工作,进入缩减状态,然后你按下按钮,伊兰将所有当前交易的TP完全向后滚动,并继续向相反方向工作。


如果你有这些东西,Ilan会非常感激的))。




P.S. 也许至少这个混蛋会工作

 

下午好。我读了你关于创建一个 免费指标 的帖子,决定给你写信。我有一个想法,就是创造一个高度逆向的指示器。

我有一个 "公式优化 "的FORMULA和技术。下面的截图是一个结果的例子。

 
Septimus7:

下午好。我读了你关于创建一个 免费指标 的帖子,决定给你写信。我有一个想法,就是创造一个高度逆向的指示器。

我有一个 "公式优化 "的FORMULA和技术。下面截图中的结果就是一个例子。


好吧,如果你读它,它似乎在说--写和将是你,而我没有看到什么