Mira cómo descargar robots gratis
¡Búscanos en Twitter!
Pon "Me gusta" y sigue las noticias
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Evalúe su trabajo en el terminal MetaTrader 5

SCRIPTS PARA EJECUTAR ORDEN DE COMPRA, VENTA Y CERRAR LAS POSICIONES - script para MetaTrader 5
- Visualizaciones:
- 18414
- Ranking:
- Publicado:
- 2022.02.24 06:13
- Actualizado:
- 2022.02.24 07:39
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
kill position #include <Trade\Trade.mqh> CTrade trade; void OnStart() { trade.PositionClose(Symbol()); }
// SCRIPT para ejecutar orden de VENTA PESADA. (configurar atajo de teclado para ejecutar el script) // ENTRADAS DEL SCRIPT: INGRESAR LOS DATOS PARA CONFIGURAR la orden (solo cambiar los parametros de entrada). // GESTION FRACCIONARIA int riesgo = 1; // Tamaño de orden proporcional respecto al apalancamiento y patrimonio. int valorlote = 10000; // Valor del lote segun broker/cuenta. int leverage = 50; // Apalancamiento de la cuenta. // GESTION FIJA bool lotfijo = false; // "false": El tamaño de la orden es automatico dependiendo del tamaño de la cuenta y riesgo elegido,, "true": El tamaño es fijo. double sizelotfijo= 0.10; // Tamano de la orden para gestion fija. // finalización de parametros. void OnStart() { if(lotfijo==false) { double lots; lots = (((((AccountInfoDouble(ACCOUNT_BALANCE))*leverage)/100)*riesgo)/valorlote); double lots2; lots2 = (((((AccountInfoDouble(ACCOUNT_BALANCE))*leverage)/100)*riesgo)/valorlote); MqlTradeRequest request={10}; MqlTradeResult result={10}; request.action =TRADE_ACTION_DEAL; request.symbol =Symbol(); request.volume =0.10; request.type =ORDER_TYPE_SELL; request.type_filling =ORDER_FILLING_FOK; request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); request.deviation=5; if(!OrderSend(request,result)) PrintFormat("OrderSend error %d",GetLastError()); PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order); } else { MqlTradeRequest request={10}; MqlTradeResult result={10}; request.action =TRADE_ACTION_DEAL; request.symbol =Symbol(); request.volume =0.10; request.type =ORDER_TYPE_SELL; request.type_filling =ORDER_FILLING_FOK; request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); request.deviation=5; if(!OrderSend(request,result)) PrintFormat("OrderSend error %d",GetLastError()); PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order); } }
// SCRIPT para ejecutar orden de COMPRA PEQUEÑA. (configurar atajo de teclado para ejecutar el script) // ENTRADAS DEL SCRIPT: INGRESAR LOS DATOS PARA CONFIGURAR la orden (solo cambiar los parametros de entrada). // GESTION FRACCIONARIA int riesgo = 1; // Tamaño de orden proporcional respecto al apalancamiento y patrimonio. int valorlote = 10000; // Valor del lote segun broker/cuenta. int leverage = 50; // Apalancamiento de la cuenta. // GESTION FIJA bool lotfijo = false; // "false": El tamaño de la orden es automatico dependiendo del tamaño de la cuenta y riesgo elegido,, "true": El tamaño es fijo. double sizelotfijo= 0.10; // Tamano de la orden para gestion fija. // finalización de parametros. void OnStart() { if(lotfijo==false) { double lots; lots = (((((AccountInfoDouble(ACCOUNT_BALANCE))*leverage)/100)*riesgo)/valorlote); double lots2; lots2 = (((((AccountInfoDouble(ACCOUNT_BALANCE))*leverage)/100)*riesgo)/valorlote); MqlTradeRequest request={10}; MqlTradeResult result={10}; request.action =TRADE_ACTION_DEAL; request.symbol =Symbol(); request.volume =0.10; request.type =ORDER_TYPE_BUY; request.type_filling =ORDER_FILLING_FOK; request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); request.deviation=5; if(!OrderSend(request,result)) PrintFormat("OrderSend error %d",GetLastError()); PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order); } else { MqlTradeRequest request={10}; MqlTradeResult result={10}; request.action =TRADE_ACTION_DEAL; request.symbol =Symbol(); request.volume =0.10; request.type =ORDER_TYPE_BUY; request.type_filling =ORDER_FILLING_FOK; request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); request.deviation=5; if(!OrderSend(request,result)) PrintFormat("OrderSend error %d",GetLastError()); PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order); } }

El indicador calcula el precio medio para el período especificado.

Trend indicator

La reducción relativa es una relación entre la reducción máxima y el valor del máximo local correspondiente del capital. Es importante utilizar el Drawdown Relativo según el saldo como filtro de optimización.

Script para obtener información sobre el número, los tipos y los tamaños de los tensores de entrada y salida del modelo onnx