Scriverò l'indicatore gratuitamente - pagina 106

 
Iurii Tokman:

questo - Comericevere notifiche push suMetaQuotes ID
dice qualcosa?

Scusa

Funziona, ho dovuto riavviare il computer e prendere il segnale ora tutto funziona Il segnale arriva grazie mille

 
Iurii Tokman:

per favore.

Funziona correttamente? Non ho controllato.

Il segnale va tutto su o giù ma c'è un altro problema, non mostra esattamente quali coppie e quale modo su o giù quando il segnale va solo (clock-alarm3.wav)

Puoi correggerlo?

Grazie mille ancora per il vostro duro lavoro

 
Andrej2478:

Il segnale va tutto su o giù ma c'è un altro problema, non mostra esattamente quali coppie e quale modo su o giù quando dà un segnale solo (clock-alarm3.wav)

Puoi correggerlo?

Deve essere riscritto per queste condizioni

 
Ciao a tutti! Cari programmatori, per favore scrivete un indicatore che dia un segnale e mostri una freccia in certe condizioni. Condizioni di acquisto: l'indicatore AO è in più, i frattali in alto appaiono, l'indicatore AC è in deficit, non appena tutte le condizioni sono soddisfatte appare una freccia e un segnale. L'indicatore frattali su 7 barre. Sulla vendita tutto specchiato. Grazie in anticipo!!!
 
Cari signori, colleghi programmatori, aiuto! Si prega di correggere il disegno di ORB Range Indicator, in modo che il rand corrente non vada oltre la sua formazione nella storia, come nello screenshot 1.

Ed è disegnato da segmenti, non da linee, come nello screenshot 2.

E sarebbe bello se l' indicatore parabolico Ma_Parabolic_Alert _2 cambiasse colore quando attraversa la MA e apparisse la freccia.

Te ne sarei molto grato!
 
Buona giornata cari codificatori. Si prega di modificare l'indicatore FX Aliev per MT5
 
sergionnik:
Buona giornata cari codificatori. Si prega di modificare l'indicatore FX Aliev per MT5

Dove posso trovarlo? Non riesco a trovarlo nella ricerca.

- devi avere qualcosa da cui convertirlo.

---------------------------------------------------------------------------

è questo?https://www.mql5.com/ru/forum/219756#comment_6057329

Продолжаю тему простейших индикаторов
Продолжаю тему простейших индикаторов
  • 2017.11.14
  • www.mql5.com
Продолжаю тему простейших индикаторов , встречал ли кто нибудь на просторах интернета индикатор нумерации свечей к примеру 1-2-3 направленных в одн...
 
sergionnik:
Buon pomeriggio cari codificatori. Si prega di rifare l'indicatore FX Aliev per MT5

Il tuo assomiglia a questo?

AUDUSDH1

File:
 
SanAlex:

Il tuo assomiglia a questo?


Sì, è esattamente quello che sembra.
 
sergionnik:
Sì, è esattamente quello che sembra.

Sono un autodidatta - ho provato. ma non ho abbastanza conoscenze per queste cose.

- solo a questo punto.

Foto di

//+------------------------------------------------------------------+
//|                                                 Fine volumes.mq5 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_buffers 6
//--- plot Label1
#property indicator_label1  "Label1"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrSkyBlue
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2
//--- plot Label2
#property indicator_label1  "Label2"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrMaroon
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2
//--- plot Label3
#property indicator_label1  "Label3"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrYellow
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2
//--- plot Label4
#property indicator_label1  "Label4"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrBlue
#property indicator_style1  STYLE_SOLID
#property indicator_width1  4
//--- plot Label5
#property indicator_label1  "Label5"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  4

input int    BarsToCount = 400;
input string pus1 = "";
input string p_s = "Points settings";
input bool   use_points = true;
input int    distance_point = 80;
input color  color_point_u = Lime;
input color  color_point_d = Red;
input color  color_point_s = Yellow;
input int    size_point = 6;
input string pus2 = "";
input string s_w = "Way";
input bool   use_show_same_way = true;
input bool   use_show_daily_way = true;
input string pus3 = "";
input string al = "Alerts";
input bool   use_alerts = false;
input string up_alert = "Up";
input string down_alert = "Down";

double up[];
double down[];
double mid[];
double up2[];
double down2[];
double none[];

static int prevtime = 0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,up,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0.0);
//--- indicator buffers mapping
   SetIndexBuffer(1,down,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,0.0);
//--- indicator buffers mapping
   SetIndexBuffer(2,mid,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,0.0);
//--- indicator buffers mapping
   SetIndexBuffer(3,up2,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0.0);
//--- indicator buffers mapping
   SetIndexBuffer(4,down2,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(4,PLOT_EMPTY_VALUE,0.0);
//--- indicator buffers mapping
   SetIndexBuffer(5,none,INDICATOR_DATA);
//--- set as an empty value 0
   PlotIndexSetDouble(5,PLOT_EMPTY_VALUE,0.0);
//---
   IndicatorSetInteger(INDICATOR_DIGITS,_Digits+1);
   string short_name="Fine volumes";
//---
   IndicatorSetString(INDICATOR_SHORTNAME,short_name);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Indicator deinitialization function                              |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   string name_de;
   for(int c=BarsToCount; c>=0; c--)
     {
      name_de="Vol_"+DoubleToString(c,0);
      if(ObjectFind(0,name_de)!=-1)
         ObjectDelete(0,name_de);
     }
//--- removes all objects of the specified type using prefix in object names
  }
//+------------------------------------------------------------------+
//| 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[])
  {
//---
   ArraySetAsSeries(open,true);
   ArraySetAsSeries(high,true);
   ArraySetAsSeries(low,true);
   ArraySetAsSeries(close,true);
//---
   up[0]=EMPTY_VALUE;
   down[0]=EMPTY_VALUE;
   mid[0]=EMPTY_VALUE;
   if(close[0]>open[0])
      up[0]=volume[0];
   if(close[0]<open[0])
      down[0]=volume[0];
   if(close[0]==open[0])
      mid[0]=volume[0];
   if(use_points)
      Ob_cre(0,time,open,close);
   if(!use_points)
      Ob_del(0);
   if(use_show_daily_way)
      Ob_cre2();
   if(!use_show_daily_way)
      Ob_del2();
   if(time[0] == prevtime)
      return(0);
   prevtime = time[0];
   for(int c=BarsToCount; c>=1; c--)
     {
      if(use_points)
         Ob_cre(c,time,open,close);
      if(!use_points)
         Ob_del(c);
      up[c]=EMPTY_VALUE;
      down[c]=EMPTY_VALUE;
      mid[c]=EMPTY_VALUE;
      up2[c]=EMPTY_VALUE;
      down2[c]=EMPTY_VALUE;
      if(close[c]>open[c])
         up[c]=volume[c];
      if(close[c]<open[c])
         down[c]=volume[c];
      if(close[c]==open[c])
         mid[c]=volume[c];
      none[c]=volume[c]+volume[c]/6;
      if(use_show_same_way)
        {
         if(close[c]>open[c] && close[c+1]>open[c+1])
           {
            up2[c]=volume[c];
            up2[c+1]=volume[c+1];
            up[c]=EMPTY_VALUE;
            up[c+1]=EMPTY_VALUE;
           }
         if(close[c]<open[c] && close[c+1]<open[c+1])
           {
            down2[c]=volume[c];
            down2[c+1]=volume[c+1];
            down[c]=EMPTY_VALUE;
            down[c+1]=EMPTY_VALUE;
           }
        }
      if(use_alerts)
        {
         if(up2[1]!=EMPTY_VALUE && up2[4]==EMPTY_VALUE)
            Alert(up_alert);
         if(down2[1]!=EMPTY_VALUE && down2[4]==EMPTY_VALUE)
            Alert(down_alert);
        }
     }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Ob_cre(int num_of_bar,
            const datetime &time[],
            const double &open[],
            const double &close[])
  {
   string name="Vol_"+DoubleToString(num_of_bar,0);
   color col_po;
   if(close[num_of_bar]>open[num_of_bar])
      col_po=color_point_u;
   if(close[num_of_bar]<open[num_of_bar])
      col_po=color_point_d;
   if(close[num_of_bar]==open[num_of_bar])
      col_po=color_point_s;
   if(ObjectFind(0,name)==-1)
     {
      ObjectCreate(0,name,OBJ_TEXT,0,0,0);
     }
   ObjectSetInteger(0,name,OBJPROP_TIME,time[num_of_bar]);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Ob_cre2()
  {
   if(ObjectFind(0,"D_w")==-1)
     {
      ObjectCreate(0,"D_w",OBJ_LABEL,0,0,0);
      ObjectSetInteger(0,"D_w",OBJPROP_CORNER,1);
      ObjectSetInteger(0,"D_w",OBJPROP_XDISTANCE,20);
      ObjectSetInteger(0,"D_w",OBJPROP_YDISTANCE,20);
     }
   if(ObjectFind(0,"D_w_v")==-1)
     {
      ObjectCreate(0,"D_w_v",OBJ_LABEL,0,0,0);
      ObjectSetInteger(0,"D_w_v",OBJPROP_CORNER,1);
      ObjectSetInteger(0,"D_w_v",OBJPROP_XDISTANCE,20);
      ObjectSetInteger(0,"D_w_v",OBJPROP_YDISTANCE,45);
     }
   color vol_col;
   if(iClose(Symbol(),PERIOD_D1,0)>iOpen(Symbol(),PERIOD_D1,0))
      vol_col=Lime;
   if(iClose(Symbol(),PERIOD_D1,0)<iOpen(Symbol(),PERIOD_D1,0))
      vol_col=OrangeRed;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Ob_del(int num_of_bar)
  {
   string name="Vol_"+DoubleToString(num_of_bar,0);
   if(ObjectFind(0,name)!=-1)
     {
      ObjectDelete(0,name);
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Ob_del2()
  {
   if(ObjectFind(0,"D_w")!=-1)
      ObjectDelete(0,"D_w");
   if(ObjectFind(0,"D_w_v")!=-1)
      ObjectDelete(0,"D_w_v");
  }
//+------------------------------------------------------------------+
Motivazione: