Return "None" in order_send

 

Buongiorno a tutti

sto impazzendo nel tentativo di effettuare un ordine via Python su MT5 con il codice a seguire.

Non rileva nessun errore ma mi restituisce un result "None" e non piazza l'ordine.

Preciso che lo stesso ordine inserito manualmente in MT5 funziona correttamente.

Qualcuno mi puà gentilmente aiutare?

Grazie

Denis

PS: ho attivato algo trading su MT5

mt5.initialize()
account = xxxxxxxxx
password = "xxxxxxxxxx"
server = "OANDATMS-MT5"
authorized=mt5.login(account, password, server)
print(authorized)
account_info = mt5.account_info()
print(mt5.terminal_info())
balance = account_info.balance
print('Balance',balance)
symbol = "NDA_CFD.DE"
lot = 4.0
tick = mt5.symbol_info_tick(symbol)

buy_price = tick.ask
sell_price = tick.bid
point = mt5.symbol_info(symbol).point

psl = 0.01
ptp = 0.01
buy_sl = buy_price*(1-psl)
buy_tp = buy_price*(1+ptp)
sell_sl = sell_price*(1+psl)
sell_tp = sell_price*(1-ptp)
deviation = 5
print(tick)
print('Ask price', tick.ask)
print('Buy Stop loss', buy_sl)
print('Buy Take profit', buy_tp)
ordine_acquisto = mt5.ORDER_TYPE_BUY
ordine_vendita = mt5.ORDER_TYPE_SELL

def crea_ordine (simbolo,quantita,tipo_ordine,prezzo,stop_loss,take_profit):
    request = {
        "action": mt5.TRADE_ACTION_DEAL,
        "symbol": simbolo,
        "volume": quantita,
        "type": tipo_ordine,
        "price": prezzo,
        "sl": stop_loss,
        "tp": take_profit,
        "deviation": deviation,
        #"magic": 234000,
        "comment": "python script open",
        "type_time": mt5.ORDER_TIME_GTC,
        "type_filling": mt5.ORDER_FILLING_RETURN,
        #"position": mt5.positions_get()[0]._asdict()['ticket']
        }
    result = mt5.order_send(request)
    print(result)



#Ordine di acquisto
crea_ordine(tick,lot,ordine_acquisto,buy_price,buy_sl,buy_tp)

mt5.

 
Denis Dal:

Buongiorno a tutti

sto impazzendo nel tentativo di effettuare un ordine via Python su MT5 con il codice a seguire.

Non rileva nessun errore ma mi restituisce un result "None" e non piazza l'ordine.

Preciso che lo stesso ordine inserito manualmente in MT5 funziona correttamente.

Qualcuno mi puà gentilmente aiutare?

Grazie

Denis

PS: ho attivato algo trading su MT5

mt5.

Dai un'occhiata qui
Documentazione su MQL5: MetaTrader per Python / order_send
Documentazione su MQL5: MetaTrader per Python / order_send
  • www.mql5.com
Invia un richiesta per eseguire un operazione di trading dal terminale al trade server. La funzione è simile ad OrderSend . Parametri...