hola
estoy haciendo una EA, donde tengo unos high y unos low, y quiero que cuando la EA, cruce esos high o low abra una posición larga o corta .... pero no logro que funcione
¿Cómo hago que una orden se abra cuando cruce una linea pintada? o el valor que tengo de high o low?
Hola compañero. Te refieres a que cuando la vela actual supere por ejemplo el High de la vela anterior?
Yo definiría antes de OnInit lo siguiente: (es la condición de cruce)
bool crossed[2];bool Cross(int i, bool condition) //returns true if "condition" is true and was false in the previous call { bool ret = condition && !crossed[i]; crossed[i] = condition; return(ret); }
Y en la sección OnInit:
int i; for (i = 0; i < ArraySize(crossed); i++) crossed[i] = true;
Y por último, si he entendido bien tu mensaje, en OnTick:
//Abrir Buy RefreshRates(); if(Cross(0, Ask > High[1]) //El precio cruza por encima de la vela máxima ) { RefreshRates(); price = Ask; if(IsTradeAllowed()) { //mandas la órden } } //Abrir Sell RefreshRates(); if(Cross(1, Bid < Low[1]) //El precio cruza por debajo de la vela mínima ) { RefreshRates(); price = Bid; if(IsTradeAllowed()) { //mandas la órden } } }
hola, gracias por la ayuda, soy novato y me está costando mucho
las velas ya las tengo definidas .... (es la mayor de una serie de velas .... ¿como hago para que tenga en cuenta esa vela?
por otra parte, al compilar me dice que refreshrates no está declarado??¿?
hola, gracias por la ayuda, soy novato y me está costando mucho
las velas ya las tengo definidas .... (es la mayor de una serie de velas .... ¿como hago para que tenga en cuenta esa vela?
por otra parte, al compilar me dice que refreshrates no está declarado??¿?
MQL5 no usa RefreshRates().
Sí usa, sí...
https://www.mql5.com/es/docs/standardlibrary/tradeclasses/csymbolinfo/csymbolinforefreshrates
- www.mql5.com
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
hola
estoy haciendo una EA, donde tengo unos high y unos low, y quiero que cuando la EA, cruce esos high o low abra una posición larga o corta .... pero no logro que funcione
¿Cómo hago que una orden se abra cuando cruce una linea pintada? o el valor que tengo de high o low?