Aiuto per la codifica - pagina 241

 

Ciao a tutti,

Non voglio che il mio EA apra una posizione se c'è già una posizione che va nella stessa direzione allo stesso livello di prezzo (usando renko). Essenzialmente sarebbe qualcosa del genere:

Se la direzione della barra precedente è al rialzo, aprire long se non c'è una posizione long allo stesso livello di prezzo (+-2 pips per esempio). Stessa cosa per lo short.

È possibile?

 

Dannazione, così facile

 

Dannazione, così facile

Grazie Mladen

 

Mladen, ho un problema.

Ho trovato il tuo indicatore Zone dinamiche Spearman, trovato anche altri. Ma non posso fare quello che voglio. Voglio in una finestra alcune correlazioni. Mi capisci? Voglio che il computer non si fermi, usando il vostro indicatore. Ma quello è sembrato come la pila di Spearman.

ma a me è impossibile farlo. Sovrappongo gli indicatori a vicenda, ma vedo solo uno

File:
eurjpymh1.png  72 kb
 
Air92:
Mladen, ho un problema.

Ho trovato il tuo indicatore zone dinamiche Spearman, trovato anche altri. Ma non posso fare quello che voglio. Voglio in una finestra qualche correlazione. Mi capite? Voglio che il computer non si fermi, usando il vostro indicatore. Ma quello è apparso come pila di Spearman.

ma per me è impossibile farlo. Sovrappongo gli indicatori l'uno all'altro, ma vedo solo uno

Ecco come appare l'indicatore da questo post: https: //www.mql5.com/en/forum/general quando lo applico più volte nella stessa sottofinestra

File:
spearman.gif  49 kb
 

Вот как индикатор с этого поста: https://www.mql5.com/en/forum/general выглядит, когда я применяю его несколько раз в том же дополнительном окне [/ QUOTE]

Mladen, grazie per nmc!

 
BlackCoq:
Ciao a tutti,

Non voglio che il mio EA apra una posizione se c'è già una posizione che va nella stessa direzione allo stesso livello di prezzo (usando renko). Essenzialmente sarebbe qualcosa del genere:

Se la direzione della barra precedente è al rialzo, aprire long se non c'è una posizione long allo stesso livello di prezzo (+-2 pip per esempio). Stessa cosa per lo short.

È possibile?

Forse basterebbe cercare il prezzo aperto per gli ultimi 15 scambi, controllare se uno di questi cade entro +- 2 pip dal prezzo corrente, poi controllare se quell'affare è nella stessa direzione del nuovo scambio previsto e se no, inviare l'ordine. Potrebbe funzionare?

Grazie,

Axel

 
BlackCoq:
Forse basterebbe cercare il prezzo aperto degli ultimi 15 scambi, controllare se uno di questi cade entro +- 2 pip dal prezzo attuale, poi controllare se quell'ordine è nella stessa direzione del nuovo ordine desiderato e, in caso contrario, inviare l'ordine. Potrebbe funzionare?

Grazie,

Axel

Axel

Si può fare.

Semplicemente gli ordini aperti dovrebbero essere scansionati per il tipo desiderato e i loro prezzi aperti dovrebbero essere confrontati con il nuovo prezzo aperto desiderato o le barre in cui sono stati aperti possono essere confrontate con la barra che serve come criterio di apertura

 
mladen:
Axel

Si può fare.

Semplicemente gli ordini aperti dovrebbero essere scansionati per il tipo desiderato e i loro prezzi di apertura dovrebbero essere confrontati con il nuovo prezzo di apertura desiderato o le barre in cui sono stati aperti possono essere confrontati con la barra che serve come criterio di apertura

Funzionerebbe scrivere una funzione come quella sotto 20 volte o giù di lì per diversi "i=OrdersTotal()-1" e poi chiamare tutte le funzioni e abbinarle al nuovo prezzo di apertura?

Grazie

 

Qualcuno può dirmi cosa ho fatto di sbagliato, il codice qui sotto è 2 EMA cross over con avvisi, si rifiuta di lavorare, qualcuno può aiutarmi a compilare e lavorare su mt4 build 600 +:

#proprietà copyright "wnk"

#property link "www.wnk.com"

#proprietà indicator_chart_window

#proprietà indicator_buffers 2

#proprietà indicator_color1 Lime

#proprietà indicator_color2 Red

//--- buffer

double ExtMapBuffer1[]

double ExtMapBuffer2[]

//variabile esterna......

//+------------------------------------------------------------------+

//|funzione di inizializzazione dell'indicatore personalizzata

//+------------------------------------------------------------------+

int init()

{

//---- indicatori

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0,217);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexEmptyValue(0,0.0);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1,217);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexEmptyValue(1,0.0);

//----

return(0);

}

//+------------------------------------------------------------------+

//| Funzione personalizzata di deinizializzazione dell'indicatore |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Funzione di iterazione dell'indicatore personalizzato |

//+------------------------------------------------------------------+

int start()

{

static datetime LastAlertTime = TimeCurrent();

int counted_bars=IndicatorCounted(),

limite;

if(counted_bars<0)

return(-1);

se(barre contate>0)

counted_bars--;

limite=Bars-counted_bars;

mentre(limite)

{

double ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0);

double ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);

double b4ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);

double b4ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);

double mom=iMomentum(NULL,0,14,PRICE_CLOSE,0);

double b4mom=iMomentum(NULL,0,14,PRICE_CLOSE,1);

//aumentare gli avvisi

if((LastAlertTime!=Time[0])&&(ema5>ema13)&&(ema5>b4ema5)&&(ema13>b4ema13)&&(mom>b4mom)&&(mom>98.6591))

ExtMapBuffer1[limit]=High[limit]+5*Point;

LastAlertTime = Time[0];

Alert(Symbol()," ",Period(), "M Price UP");

/avvisi di vendita

if((LastAlertTime!=Time[0])&&(ema5<ema13)&&(ema5<b4ema5)&&(ema13<b4ema13)&&(mom<b4mom)&&(mom<100.6872))

ExtMapBuffer2[limit]=Low[limit]-5*Point;

LastAlertTime = Time[0];

Alert(Symbol()," ",Period(), "M Price Down");

}

return(0);

}

//+------------------------------------------------------------------+