Tarea técnica

import MetaTrader5 as mt5
import datetime
import time

# Configure your trading symbols and parameters
TRADING_SYMBOLS = ["EURUSD", "USDJPY"]
TRADE_VOLUME = 0.1
STOP_LOSS = 50  # in points
TAKE_PROFIT = 100  # in points

# Initialize connection to MetaTrader 5
if not mt5.initialize():
    print("Initialize() failed:", mt5.last_error())
    quit()

def get_current_symbols():
    now = datetime.datetime.now()
    # If it's Saturday or Sunday between 9am and 9pm, only trade EUR/USD and USD/JPY
    if now.weekday() == 5 or now.weekday() == 6:  # Saturday = 5, Sunday = 6
        if 9 <= now.hour < 21:
            return ["EURUSD", "USDJPY"]
    return TRADING_SYMBOLS

def get_position(symbol):
    positions = mt5.positions_get(symbol=symbol)
    return positions[0] if positions else None

def close_position(position):
    order_type = mt5.ORDER_TYPE_SELL if position.type == mt5.ORDER_TYPE_BUY else mt5.ORDER_TYPE_BUY
    close_request = {
        "action": mt5.TRADE_ACTION_DEAL,
        "symbol": position.symbol,
        "volume": position.volume,
        "type": order_type,
        "position": position.ticket,
        "price": mt5.symbol_info_tick(position.symbol).bid if order_type == mt5.ORDER_TYPE_BUY else mt5.symbol_info_tick(position.symbol).ask,
        "deviation": 20,
        "magic": 123456,
        "comment": "Auto close loss",
        "type_time": mt5.ORDER_TIME_GTC,
        "type_filling": mt5.ORDER_FILLING_IOC,
    }
    result = mt5.order_send(close_request)
    return result

def open_trade(symbol, order_type):
    price = mt5.symbol_info_tick(symbol).ask if order_type == mt5.ORDER_TYPE_BUY else mt5.symbol_info_tick(symbol).bid
    sl = price - STOP_LOSS * 0.0001 if order_type == mt5.ORDER_TYPE_BUY else price + STOP_LOSS * 0.0001
    tp = price + TAKE_PROFIT * 0.0001 if order_type == mt5.ORDER_TYPE_BUY else price - TAKE_PROFIT * 0.0001

    request = {
        "action": mt5.TRADE_ACTION_DEAL,
        "symbol": symbol,
        "volume": TRADE_VOLUME,
        "type": order_type,
        "price": price,
        "sl": sl,
        "tp": tp,
        "deviation": 20,
        "magic": 123456,
        "comment": "Auto trade",
        "type_time": mt5.ORDER_TIME_GTC,
        "type_filling": mt5.ORDER_FILLING_IOC,
    }

    result = mt5.order_send(request)
    return result

def simple_strategy(symbol):
    # Simple logic: open buy if price is above 50-MA
    rates = mt5.copy_rates_from_pos(symbol, mt5.TIMEFRAME_M5, 0, 100)
    if rates is None or len(rates) < 50:
        return

    closes = [bar.close for bar in rates]
    ma50 = sum(closes[-50:]) / 50
    last_close = closes[-1]

    position = get_position(symbol)

    if position:
        # Close if loss is more than X points
        profit = position.profit
        if profit < -10:  # Close if loss is more than $10
            print(f"Closing loss on {symbol}")
            close_position(position)
    else:
        if last_close > ma50:
            print(f"Opening BUY trade for {symbol}")
            open_trade(symbol, mt5.ORDER_TYPE_BUY)
        elif last_close < ma50:
            print(f"Opening SELL trade for {symbol}")
            open_trade(symbol, mt5.ORDER_TYPE_SELL)

def main_loop():
    try:
        while True:
            symbols = get_current_symbols()
            for symbol in symbols:
                simple_strategy(symbol)
            time.sleep(60)  # Wait 1 minute before checking again
    except KeyboardInterrupt:
        print("Bot stopped by user.")
    finally:
        mt5.shutdown()

if __name__ == "__main__":
    main_loop()

Han respondido

1
Desarrollador 1
Evaluación
(394)
Proyectos
555
41%
Arbitraje
30
57% / 3%
Caducado
57
10%
Libre
Ha publicado: 11 ejemplos
2
Desarrollador 2
Evaluación
(274)
Proyectos
403
28%
Arbitraje
40
40% / 50%
Caducado
1
0%
Libre
3
Desarrollador 3
Evaluación
(328)
Proyectos
513
19%
Arbitraje
35
43% / 31%
Caducado
34
7%
Trabajando
4
Desarrollador 4
Evaluación
(20)
Proyectos
25
8%
Arbitraje
9
33% / 33%
Caducado
1
4%
Trabajando
5
Desarrollador 5
Evaluación
(252)
Proyectos
462
26%
Arbitraje
139
20% / 60%
Caducado
100
22%
Libre
6
Desarrollador 6
Evaluación
(14)
Proyectos
15
20%
Arbitraje
1
100% / 0%
Caducado
0
Libre
7
Desarrollador 7
Evaluación
Proyectos
2
0%
Arbitraje
4
25% / 50%
Caducado
1
50%
Libre
8
Desarrollador 8
Evaluación
(4)
Proyectos
3
33%
Arbitraje
2
0% / 100%
Caducado
0
Libre
9
Desarrollador 9
Evaluación
(8)
Proyectos
9
22%
Arbitraje
0
Caducado
0
Libre
10
Desarrollador 10
Evaluación
(33)
Proyectos
36
33%
Arbitraje
5
0% / 80%
Caducado
0
Trabaja
Ha publicado: 2 ejemplos
11
Desarrollador 11
Evaluación
(318)
Proyectos
565
35%
Arbitraje
81
31% / 44%
Caducado
204
36%
Libre
12
Desarrollador 12
Evaluación
(78)
Proyectos
246
74%
Arbitraje
7
100% / 0%
Caducado
1
0%
Libre
Ha publicado: 1 artículo
13
Desarrollador 13
Evaluación
(2)
Proyectos
3
0%
Arbitraje
1
100% / 0%
Caducado
0
Libre
Solicitudes similares
A robot 50+ USD
HIGH-FREQUENCY M5/M15 CONCURRENT ENTRY SNIPER import time class HighFrequencySniper: def __init__(self): self.target_profit = 25.00 # Targeted Delta Move self.max_execution_time = 3600 # 1 Hour Sandbox (Seconds) self.lot_allocation = "CALIBRATED_TO_RISK" def execute_hft_scan(self, current_price, m5_rsi, m15_order_block): print(f"[SCANNING] Current Kernel Metric: ${current_price:.2f
# HIGH-FREQUENCY M5/M15 CONCURRENT ENTRY SNIPER import time class HighFrequencySniper: def __init__(self): self.target_profit = 25.00 # Targeted Delta Move self.max_execution_time = 3600 # 1 Hour Sandbox (Seconds) self.lot_allocation = "CALIBRATED_TO_RISK" def execute_hft_scan(self, current_price, m5_rsi, m15_order_block): print(f"[SCANNING] Current Kernel Metric: ${current_price:.2f}")
I need a trading bot, please i need this project urgently and when messaing me kindly send me samples of past works and dont forget i need the project to be done as soon as possible
If you have good Market structure indicators with buffer no repaint internal structure and external structure etc good market structure if you have then i already have ea you have to input into the indicator soy current ea opens position based on the market structure
*Need an MQL5 EA for MT5 to trade gold and forex automatically. Must include Stop Loss, Take Profit, and basic risk management. Budget is $30 to $50. Looking for clean, stable code that works on VPS.*
MT5 EA for XAUUSDm - Trend Grid with EMA+ATR+ADX (Non-Martingale) 【Strategy Summary】 - EMA(50) on H1 judges trend direction. 2 H1 closes to confirm crossover. - ADX(14) below 20 stops new orders. Existing orders still managed. - Parallel mode: 5 stop orders placed at once. Spacing = ATR(14)×1.5 (300-600 pts). - TP: 1 new order at furthest price + spacing. SL: no replacement. - Fixed SL 300pts. No fixed TP. Trailing
Hello Developers, I am looking for an experienced MQL5 developer to complete the development of a custom MetaTrader 5 Expert Advisor (EA) based on my proprietary trading strategy. I already have a partially developed EA that includes the required custom indicators and part of the trading logic. The project can either be completed by modifying the existing EA or, if more appropriate, by rebuilding it from scratch
Description: I need an experienced MQL5 developer to build a professional MT5 Expert Advisor for XAU/USD based on my trading strategy. I require the full .mq5 source code and the compiled file. Trading Logic: Timeframes: H4 to determine overall direction, H1 for supply and demand zones, M15 for trade entries. Buy conditions: H4 trend is bullish, price reaches a valid H1 demand zone, liquidity sweep occurs below the
WORKING EA 35+ USD
I Need an existing proven profitable EA. EA should have at least 3 months track record of consistency. My budget is $35 and nothing more. If you do not have the working EA for that amount, please do not apply. I'm not paying a dime more. Again do not apply if you are not willing to take the above amount
Standby Description . Prop Firm Environment . ( Monitor Execution and Handling Environment Changes as Required ) . Technical Issues . Delete extra lines of code (Clean Code , Folder) . Asset related translation , no need for Logic Alteration

Información sobre el proyecto

Presupuesto
50 - 200 USD
Plazo límite de ejecución
de 7 a 10 día(s)