No sé cómo convertir esto en una vida, ¿es posible hacerlo?
Mi estrategia es idealmente abierta manualmente a las 8:00 en la terminal, si el beneficio, entonces hasta el día siguiente. Si el beneficio no va en mi dirección, entonces en la pérdida invierto la posición + - no importa, no abro más posiciones este día y espero hasta las 8 de la mañana. Es decir, debe haber un máximo de dos pedidos y no más. Si no alcanzamos el beneficio, pero la red de arrastre se mueve hasta el punto de equilibrio, también hacemos un rollover. Por supuesto, podemos ocuparnos de todo, pero nuestro trabajo no nos permite controlar las posiciones. Sería mejor colocar una orden y dejar que el EA siga la posición. Adjunté el RSI sólo para probarlo en el Probador de Estrategias.
Esto es todo lo que necesitaba.
externint Hour_To_Open = 08; //час открытия (-1 - не задано), терминальное времяexternint Minute_To_Open = 00; //минута открытия (-1 - не задано), терминальное времяexterndouble TakeProfit = 50;
externdouble StopLoss = 30;
externdouble Lot = 0.1;
externint MagicNumber = 655433;
//+------------------------------------------------------------------+//| expert start function |//+------------------------------------------------------------------+int start()
{
//----if((Hour()==Hour_To_Open) && (Minute()==Minute_To_Open))
{ //если настало время открытия сделокint total = OrdersTotal();
for (int i = 0; i < total; i++)
{
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
{
return(0);
}
}
int ticket=1;
if(iRSI(NULL,0,14,PRICE_CLOSE,0)>iRSI(NULL,0,14,PR ICE_CLOSE,1))
{
ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Bid - StopLoss * Point,Bid + TakeProfit * Point,"My order #",MagicNumber,0,Blue);
if(ticket<0)
{
Sleep(30000);
}
}
else
{
ticket=OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Ask + StopLoss * Point,Ask - TakeProfit * Point,"My order #",MagicNumber,0,Red);
if(ticket<0)
{
Sleep(30000);
}
}
} //end if((Hour()==Hour_To_Open) && (Minute()==Minute_To_Open))//----return(0);
}
//+------------------------------------------------------------------+
Tengo este trailing stop, lo tomé de otro EA pero no me funciona
El reverso debe estar buscando en algún lugar por aquí, ¿lo tomo o no?
bool OrdenarCerrarPor(
int ticket, int opposite, color Color=CLR_NONE)
Cerrar una posición abierta con otra posición abierta en el mismo instrumento, pero en sentido contrario. Devuelve TRUE si la función se completa con éxito. Devuelve FALSE cuando la función falla. Para obtener información sobre el error, llame a la función GetLastError().
Parámetros:
billete
-
Número de serie único de la orden que se va a cerrar.
frente a
-
El número de secuencia único de la orden opuesta.
Color
-
Color de la flecha de cierre en el gráfico. Si falta el parámetro o su valor es CLR_NONE, la flecha no se muestra en el gráfico.
Señores profesionales, ¿podrían decirme si es posible ejecutar un script desde la barra de herramientas? Por el momento, el script escrito tiene que ser ejecutado desde el navegador, o con una combinación preestablecida de teclas (que por alguna razón sólo funciona de vez en cuando). Pregunta - ¿Es posible, por ejemplo, asignar al icono del panel "herramientas gráficas" una nueva función y ejecutar el script desde la barra de herramientas? ¿Tal vez haya otras opciones?
kon12: Sr. Experto, aconséjeme, ¿es posible ejecutar el script desde la barra de herramientas? Por el momento, el script tiene que ser ejecutado desde el navegador, o usando una combinación preestablecida de teclas (que de alguna manera sólo funciona una vez). Pregunta: ¿es posible, por ejemplo, asignar una nueva función al icono del panel de "herramientas gráficas" y ejecutar el script desde la barra de herramientas? ¿Hay otras opciones?
No, pero se puede utilizar la función de arrastrar y soltar el objeto de la etiqueta como un ejemplo ...
Descargar, extraer a la terminal con el reemplazo, permitir la importación de dll en la configuración de la terminal, adjunto Asesor de Expertos a los expertos, introduzca el nombre de la secuencia de comandos para ser lanzado reiniciar la terminal o compilar.
El Asesor Experto implementa - carga el script en el gráfico especificado por su nombre al arrastrar el objeto en el gráfico.
ServiceLoadScript(WindowHandle(Symbol(), Period()), "ZZ_All_Quotings 4.10425", /*<---- Имя загружаемого скрипта.*/ false);
Por favor, avisa. Estoy escribiendo un EA que funciona en la ruptura del canal, poniendo dos pendientes detrás del canal. Cuando uno de ellos se dispara, otro debe ser eliminado. ¿Cómo implementarlo en el código?
Por favor, avisa. Estoy escribiendo un EA que funciona en la ruptura del canal, poniendo dos pendientes detrás del canal. Cuando uno de ellos se dispara, el otro debe ser eliminado. ¿Cómo implementarlo en el código?
Tal vez esto sería una buena idea - no lo he hecho yo mismo - si su EA permite sólo una orden de mercado (de 2 pendientes que fueron colocadas previamente), entonces monitoree (siga) la disponibilidad de su orden (de mercado) en el mercado y tan pronto como aparezca, elimine la pendiente. Eso es todo. Si quieres eliminar una orden pendiente, busca en Google algo como "eliminar órdenes site:mql4.com".
Ejecutando el EA en el probador. El servidor tiene cuatro dígitos. Al colocar la orden de compra o venta en el registro dice
2011.10.23 15:27:26 2010.12.16 06:16 test_sovetnik GBPUSD,H1: open #1 buy 0.10 GBPUSD at 1.5551 sl: 1.4551 tp: 1.5586 ok
¡Pero abre a 1.55512 ! A los cinco dígitos. Entonces las órdenes pendientes se colocan a cuatro dígitos y se activan a cuatro dígitos también. Pero OP_SELL y OP_BUY se abren sólo con cinco dígitos.
Hago NormalizeDouble(Ask,Digits);
Nada funciona. Por favor, aconséjeme cómo resolver este problema.
Por supuesto, puedes ignorar el último dígito. El error no se produce, pero en aras de la pureza del experimento, necesito que todas mis operaciones se realicen con cuatro dígitos.
ZZZEROXXX: Por favor, aconseje cómo arreglar un EA, por ejemplo, promedios móviles estándar, para convertirlo en un script con el fin de ejecutarlo en un marco de tiempo no estándar.
UP. Te agradecería que me dijeras cómo convertir un EA en un script en pocas palabras
Hola, ¿podríais decirme cómo hacer un bucle en la comprobación de la barra arriba/abajo? Es decir, ¿cómo puedo describir esta condición "más corta"?
Close[0]>Open[0]&& Close[1]>Open[1]&& Close[2]>Open[2]&& Close[3]>Open[3]&&& Close[4]>Open[4]&& Close[5]>Open[5]&& Close[6]>Open[6]&& Close[7]>Open[7]
Gracias de antemano.
Podrías hacerlo, pero no es probable que sea más rápido. Hay que ampliar un poco las condiciones
No sé cómo convertir esto en una vida, ¿es posible hacerlo?
Mi estrategia es idealmente abierta manualmente a las 8:00 en la terminal, si el beneficio, entonces hasta el día siguiente. Si el beneficio no va en mi dirección, entonces en la pérdida invierto la posición + - no importa, no abro más posiciones este día y espero hasta las 8 de la mañana. Es decir, debe haber un máximo de dos pedidos y no más. Si no alcanzamos el beneficio, pero la red de arrastre se mueve hasta el punto de equilibrio, también hacemos un rollover. Por supuesto, podemos ocuparnos de todo, pero nuestro trabajo no nos permite controlar las posiciones. Sería mejor colocar una orden y dejar que el EA siga la posición. Adjunté el RSI sólo para probarlo en el Probador de Estrategias.
Esto es todo lo que necesitaba.
Tengo este trailing stop, lo tomé de otro EA pero no me funciona
¿Cómo lo adjunto? Y la inversión, debería funcionar sólo una vez después de la apertura de la posición
El reverso debe estar buscando en algún lugar por aquí, ¿lo tomo o no?
if(iRSI(NULL,0,14,PRICE_CLOSE,0)>75) { OrderCloseBy(order_id,opposite_id); return(0); }Buenas tardes.
¿Puede decirme dónde puedo ver el código original de la función OrderSend()?
Gracias de antemano.
Sr. Experto, aconséjeme, ¿es posible ejecutar el script desde la barra de herramientas? Por el momento, el script tiene que ser ejecutado desde el navegador, o usando una combinación preestablecida de teclas (que de alguna manera sólo funciona una vez). Pregunta: ¿es posible, por ejemplo, asignar una nueva función al icono del panel de "herramientas gráficas" y ejecutar el script desde la barra de herramientas? ¿Hay otras opciones?
No, pero se puede utilizar la función de arrastrar y soltar el objeto de la etiqueta como un ejemplo ...
Descargar , extraer a la terminal con el reemplazo, permitir la importación de dll en la configuración de la terminal, adjunto Asesor de Expertos a los expertos, introduzca el nombre de la secuencia de comandos para ser lanzado reiniciar la terminal o compilar.
El Asesor Experto implementa - carga el script en el gráfico especificado por su nombre al arrastrar el objeto en el gráfico.
¡¡¡Buenas tardes!!!
Por favor, avisa. Estoy escribiendo un EA que funciona en la ruptura del canal, poniendo dos pendientes detrás del canal. Cuando uno de ellos se dispara, otro debe ser eliminado. ¿Cómo implementarlo en el código?
¡¡¡Buenas tardes!!!
Por favor, avisa. Estoy escribiendo un EA que funciona en la ruptura del canal, poniendo dos pendientes detrás del canal. Cuando uno de ellos se dispara, el otro debe ser eliminado. ¿Cómo implementarlo en el código?
Tal vez esto sería una buena idea - no lo he hecho yo mismo - si su EA permite sólo una orden de mercado (de 2 pendientes que fueron colocadas previamente), entonces monitoree (siga) la disponibilidad de su orden (de mercado) en el mercado y tan pronto como aparezca, elimine la pendiente. Eso es todo. Si quieres eliminar una orden pendiente, busca en Google algo como "eliminar órdenes site:mql4.com".
¡Hola!
Ejecutando el EA en el probador. El servidor tiene cuatro dígitos. Al colocar la orden de compra o venta en el registro dice
2011.10.23 15:27:26 2010.12.16 06:16 test_sovetnik GBPUSD,H1: open #1 buy 0.10 GBPUSD at 1.5551 sl: 1.4551 tp: 1.5586 ok
¡Pero abre a 1.55512 ! A los cinco dígitos. Entonces las órdenes pendientes se colocan a cuatro dígitos y se activan a cuatro dígitos también. Pero OP_SELL y OP_BUY se abren sólo con cinco dígitos.
Hago NormalizeDouble(Ask,Digits);
Nada funciona. Por favor, aconséjeme cómo resolver este problema.
Por supuesto, puedes ignorar el último dígito. El error no se produce, pero en aras de la pureza del experimento, necesito que todas mis operaciones se realicen con cuatro dígitos.
Por favor, aconseje cómo arreglar un EA, por ejemplo, promedios móviles estándar, para convertirlo en un script con el fin de ejecutarlo en un marco de tiempo no estándar.
UP. Te agradecería que me dijeras cómo convertir un EA en un script en pocas palabras