Strategie automatiche con ordine OCO (One Cancel Other)

Last Updated on 17 Dicembre 2023 by automiamo.com

OCO (One Cancel Other) è un particolare tipo di ordine complesso che ho spiegato in dettaglio sul mio canale youtube. La peculiarità di questo ordine è che non decidiamo a priori una sola direzione, long o short, ma possiamo decidere di aprire due ordini contrari, long e short contemporaneamente, che è la scelta più gettonata.

Ordini OCO in automatico su Tradingview

La mia implementazione dell’ordine OCO su Tradingview

Su Tradingview non è possibile al momento aprire ordini OCO, ma per farlo uso il mio sistema “ponte” gServer per inviare questo tipo di ordine al broker.

Possiamo inoltre creare delle strategie automatiche usando l’ordine OCO, programmando in pinescript, linguaggio nativo di Tradingview, tramite le istruzioni spiegate in quest’altro video.

Ordini OCO in Python

Sto facendo molto uso dell’ordine OCO, usando Python, su dei bot dedicati a fare scalping.

In particolare ho creato un bot, gScalper, per fare trading automatico di brevissimo termine – durata trade massimo 1 minuto – in corrispondenza delle notizie macroeconomiche, usando gli ordini OCO.

Di seguito un esempio di richiesta OCO che possiamo inviare al broker, in python o in un qualsiasi altro linguaggio di programmazione sul quale il broker fornisce il proprio SDK (Software Development Kit)

Request OCO{‘account_id’: ‘xxxxxx’, ‘symbol’: ‘AUD/JPY’, ‘is_buy’: ‘true’, ‘is_buy2’: ‘false’, ‘amount’: 30, ‘is_in_pips’: ‘true’, ‘is_in_pips2’: ‘true’, ‘time_in_force’: ‘GTC’, ‘order_type’: ‘MarketRange’, ‘limit’: 30, ‘limit2’: 30, ‘rate’: 93.94, ‘rate2’: 93.791, ‘stop’: -3.0, ‘stop2’: -3.0, ‘trailing_step’: 10.0, ‘trailing_step2’: 10.0, ‘trailing_stop_step’: 10, ‘trailing_stop_step2’: 10, ‘range’: 3}

Questo è un esempio reale di richiesta inviata dal mio bot per dire al broker: aprimi un ordine OCO dal mio account_id, sul cambio AUD/JPY. L’ordine OCO deve includere un ordine buy stop con prezzo di entrata definito in rate , e un ordine sell stop con prezzo di entrata definito in rate2. Il volume di contratti da aprire è definito nella variabile amount.

Nel messaggio sono presenti altri parametri molto importanti, order_type, limit, stop, trailing_step, trailing_stop_step, range. Saranno approfonditi in un post dedicato.


Giancarlo Pagliaroli

Disclaimer: il contenuto che trovate in questo sito non è da intendersi in alcun modo come consiglio finanziario, né sollecitazione all’investimento, ma soltanto a scopo didattico.

5,0 / 5
Grazie per aver votato!

Lascia un commento