Registro degli algoritmi
Se hai un ampio portfolio di algoritmi che distribuisci agli utenti, potresti voler offrire anche un pannello o sistema personalizzato che consenta a questi utenti di gestire facilmente i tuoi algoritmi sui loro computer locali. Un tale sistema sarebbe particolarmente utile se offri diversi prodotti che si completano a vicenda (ad esempio, due cBot e un indicatore personalizzato che devono essere tutti installati per funzionare correttamente). Se un utente salta l'installazione di un prodotto richiesto, sarai in grado di avvisarlo di questo fatto.
Inoltre, quando un utente ha accesso a molti algoritmi, a volte può essere difficile tenerne traccia. Ad esempio, un utente potrebbe eliminare accidentalmente un algoritmo prezioso per poi rendersi conto successivamente di non poterlo più utilizzare.
Per aiutare te e i tuoi utenti, l'API Algo espone l'interfaccia AlgoRegistry, che offre un mezzo conveniente per tracciare dinamicamente le statistiche sugli algoritmi attualmente installati e disinstallati di diversi tipi.
Lavorare con il registro degli algoritmi
In AlgoRegistry, ogni algoritmo è rappresentato da un AlgoType, che contiene il nome univoco dell'algoritmo e il suo AlgoKind (come un AlgoKind.CustomIndicator).
Puoi recuperare un algoritmo specifico dal registro chiamando il seguente metodo.
1 | |
Per recuperare un conteggio degli algoritmi di un particolare tipo, chiama il seguente metodo.
1 | |
Puoi anche aggiungere gestori personalizzati ai seguenti eventi:
AlgoTypeInstalled- attivato ogni volta che viene installato un nuovo algoritmo.AlgoTypeDeleted- attivato ogni volta che viene eliminato un nuovo algoritmo.AlgoTypeChanged- attivato ogni volta che un algoritmo installato viene modificato.
AlgoRegistry in diverse modalità
AlgoRegistry funziona come previsto nel backtesting e nell'ottimizzazione. Non funziona quando si utilizza cTrader CLI.
Creare un plugin di esempio
AlgoRegistry è perfetto per creare un plugin che visualizzerà informazioni sugli algoritmi direttamente nell'interfaccia utente di cTrader. Il seguente plugin fa proprio questo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | |
Dopo aver costruito il nostro plugin, dovremmo vedere il seguente blocco nel Pannello del simbolo attivo. I dati nel blocco verranno aggiornati dinamicamente ogni secondo.

Installare un algoritmo tramite un altro algoritmo
L'interfaccia AlgoRegistry consente agli sviluppatori di creare algoritmi in grado di installare altri algoritmi. Ad esempio, puoi programmare un cBot (all'avvio) per installare automaticamente un altro cBot, un indicatore o un plugin.
Il seguente cBot è programmato per installare un altro cBot:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | |
Riepilogo
AlgoRegistry è un'ottima funzionalità per gli sviluppatori di plugin ma può essere utilizzata anche con altri tipi di algoritmi. Ad esempio, potresti creare un indicatore che fa riferimento a un altro indicatore personalizzato, nel qual caso il tuo algoritmo dovrebbe prima verificare se l'indicatore richiesto è installato dall'utente. Consigliamo inoltre di aggiungere AlgoRegistry ai tuoi algoritmi esistenti per semplificare la gestione degli indicatori personalizzati e di altri tipi di algoritmi.