Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1130

 
The_Sheikh:

Come questo


Solo il mio caso.

Ecco un pezzo dell'esempio per DRAW_COLOR_HISTOGRAM2 nel manuale:

Qui plot_colors = 8, cols[] - array con diversi colori. Ma il terminale non accetta nessun colore tranne il primo.

Assegna un istogramma al primo? E il buffer di colore va dopo il secondo. Dovrebbe andare dopo il primo.

 
Artyom Trishkin:

Assegna un istogramma al primo? E il buffer di colore va dopo il secondo. Dovrebbe andare dopo il primo.

Qual è il primo? Quale secondo? Quale prima? Di cosa stiamo parlando?

Fammi un esempio, così non devo menare il can per l'aia.

 
The_Sheikh:
Qual è il primo? Quale secondo? Quale prima? Di cosa stiamo parlando?

Fate un esempio, per non menare il can per l'aia.

Formulate il vostro obiettivo. Descrivete COSA volete ottenere dall'indicatore.

 
Vladimir Karputov:

Dichiara il tuo obiettivo. Descrivete COSA volete ottenere dall'indicatore.

Lo stai prendendo in giro?

https://www.mql5.com/ru/forum/6343/page1129#comment_13439765

 
The_Sheikh:

Mi stai prendendo in giro?

https://www.mql5.com/ru/forum/6343/page1129#comment_13439765

Non va bene. Stai dando frammenti di frasi. In questi casi, la risposta universale è:documentazione.


Quando smetti di tenere il broncio e di offenderti, formula ciò che ti chiedo:

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Domande dai principianti MQL5 MT5 MetaTrader 5

Vladimir Karputov, 2019.10.06 06:49

Definisci il tuo problema. Descrivete COSA volete ottenere dall'indicatore.

Così ora non è affatto chiaro cosa state facendo, e soprattutto non è chiaro PERCHE'. Non è chiaro quale sia l'obiettivo finale - e quindi nessuno può indovinare.
 
The_Sheikh:

Come questo


Esattamente il mio caso.

Ecco un pezzo dell'esempio per DRAW_COLOR_HISTOGRAM2 nel manuale:

Qui plot_colors = 8, cols[] è un array con diversi colori. Ma il terminale non percepisce alcun colore tranne il primo.

Questo è esattamente il contrario. Questo riempie l'array di colori da assegnare in questa linea di codice dalla documentazione

ColorHistogram_2Colors[i]=day; 
 
Vladimir Karputov:

Questo non va bene. State dando frammenti di frasi. In questi casi, la risposta universale è:documentazione.

Quando smetti di tenere il broncio e di essere offeso, formula ciò che ti chiedo di fare:

Cioè, non è chiaro cosa state facendo e, soprattutto, non è chiaro PERCHE' lo state facendo. Non è chiaro quale sia l'obiettivo finale - e quindi nessuno può indovinare.

Ho fatto una domanda, indicato il problema, dato un esempio che può anche essere compilato. Se questo non funziona per voi, allora non avete idea di cosa si tratta e quindi non conoscete la risposta. In questi casi, la risposta universale è imparare a leggere.

Quando smetterete di fare i furbi e imparerete a leggere e a formulare le vostre domande, l'argomento vi sarà chiaro.

L'obiettivo finale: disegnare un istogramma con ciascuno dei colori dati.


Alexey Viktorov:

Questo è esattamente ciò che non è. Riempie un array di colori da assegnare in questa linea di codice dalla documentazione

Proprio così, si sta riempiendo di una serie di colori. E come ho scritto prima, nel modo seguente (dall'esempio) i colori sono riempiti e specificati correttamente:

#property indicator_color2 GreenC,RedC

...

Arr23[i]=0.0; //Verde

Arr23[i]=1.0; //Rosso


E con questo metodo:

PlotIndexSetInteger(1,PLOT_LINE_COLOR,0,GreenC;)
PlotIndexSetInteger(1,PLOT_LINE_COLOR,1,RedC);
...

Arr23[i]=0.0; //Verde

Arr23[i]=1.0; // Invece del rosso otteniamo il nero (cioè nessun colore specificato)

 
The_Sheikh:
A quale prima? Quale secondo? Quale prima? Di cosa stiamo parlando?

Fammi un esempio, così non devo menare il can per l'aia.

#property indicator_chart_window
//#property indicator_separate_window
#property indicator_buffers 4
#property indicator_plots 2

#define  GreenC 0x00FF00
#define  RedC 0x0000FF
#property indicator_type1 DRAW_NONE
#property indicator_type2 DRAW_COLOR_HISTOGRAM2
//#property indicator_color2 GreenC,RedC

double
Arr11[],
Arr21[],
Arr22[],
Arr23[];

void OnInit()
{
SetIndexBuffer(0,Arr11,INDICATOR_CALCULATIONS);
SetIndexBuffer(1,Arr21,INDICATOR_DATA);
SetIndexBuffer(2,Arr22,INDICATOR_DATA);
SetIndexBuffer(3,Arr23,INDICATOR_COLOR_INDEX);
IndicatorSetInteger(INDICATOR_DIGITS,Digits());
PlotIndexSetInteger(1,PLOT_LINE_WIDTH,4);
PlotIndexSetInteger(1,PLOT_LINE_COLOR,0,GreenC);
PlotIndexSetInteger(1,PLOT_LINE_COLOR,1,RedC);
//PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,0.0);

Uno. Secondo. Tre.

Si imposta il primo buffer come istogramma del colore. A cosa serve il secondo? E perché il buffer del colore va dopo il secondo buffer quando dovrebbe andare dopo il primo. Hai un buffer di colore di 3. Dovrebbe essere 2.

 
Artyom Trishkin:

Uno. Secondo. Terzo.

Si imposta il primo buffer sul tipo di istogramma del colore. A cosa ti serve il secondo? E perché il buffer di colore va dopo il secondo quando dovrebbe andare dopo il primo. Avete un buffer di colore di 3, e dovrebbe essere di 2.

Artyom, non hai notato che il tipo è DRAW_COLOR_HISTOGRAM2 e ha due buffer di dati e un terzo buffer di colore.

 
The_Sheikh:

Ho fatto una domanda, indicato il problema, dato un esempio che può anche essere compilato. Se non vi soddisfa, allora non avete idea di cosa si tratti e quindi non conoscete la risposta. In questi casi, la risposta universale è imparare a leggere.

Quando smetterete di fare i furbi e imparerete a leggere e a formulare le vostre domande, l'argomento vi sarà chiaro.

L'obiettivo finale: disegnare un istogramma con ciascuno dei colori dati.


Esatto, riempie l'array di colori. E come ho scritto prima, il metodo seguente (dall'esempio) riempie i colori e li specifica correttamente:

#property indicator_color2 GreenC,RedC

...

Arr23[i]=0.0; //Verde

Arr23[i]=1.0; //Rosso


E con questo metodo:

PlotIndexSetInteger(1,PLOT_LINE_COLOR,0,GreenC);
PlotIndexSetInteger(1,PLOT_LINE_COLOR,1,RedC);
...

Arr23[i]=0.0; //Verde

Arr23[i]=1.0; //otteniamo il nero invece del rosso (cioè il colore non è specificato)

E perché questa linea è commentata?

//#property indicator_color2 GreenC,RedC
Anche se altri colori devono essere inclusi in esso. O almeno uno, ma ci deve essere una dichiarazione.