1
0
Fork 0
forked from e187038/SP_GVA1
SP_GVA1/SP_Pedro1/Homework1/SP_Pedro_Chapter09.mq5

63 lines
5 KiB
MQL5
Raw Permalink Normal View History

2025-05-30 16:25:41 +02:00
<EFBFBD><EFBFBD>//+------------------------------------------------------------------+
//| SP_Pedro_Chapter09.mq5 |
//| Copyright 2024, MetaQuotes Ltd. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, MetaQuotes Ltd."
#property link "https://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnStart()
{
// Definir variables para almacenar los par<EFBFBD>metros de la orden
double lotSize = 0.1; // Tama<EFBFBD>o del lote
double stopLoss = 50; // Nivel de stop loss en puntos
double takeProfit = 100; // Nivel de take profit en puntos
double precio = SymbolInfoDouble(_Symbol, SYMBOL_BID); // Precio actual de oferta del s<EFBFBD>mbolo
// Definir la estructura de solicitud de operaci<EFBFBD>n
MqlTradeRequest request;
ZeroMemory(request);
request.action = TRADE_ACTION_DEAL; // Tipo de acci<EFBFBD>n: Deal (acuerdo)
request.type = ORDER_TYPE_BUY; // Tipo de orden: Compra
request.volume = lotSize; // Tama<EFBFBD>o del lote
request.price = precio; // Precio de mercado actual
request.sl = precio - stopLoss * _Point; // Stop Loss
request.tp = precio + takeProfit * _Point; // Take Profit
request.symbol = _Symbol; // S<EFBFBD>mbolo
request.magic = 3344; // N<EFBFBD>mero m<EFBFBD>gico
// Enviar la solicitud de operaci<EFBFBD>n
MqlTradeResult result;
if (OrderSend(request, result))
{
Print("Orden de compra enviada correctamente. Ticket: ", result.order);
}
else
{
Print("Error al enviar la orden de compra. C<00>digo de error: ", GetLastError());
}
}
//+------------------------------------------------------------------+