English Русский 中文 Español Deutsch 日本語 Português 한국어 Français Türkçe
Alcuni suggerimenti per i clienti alle prime armi

Alcuni suggerimenti per i clienti alle prime armi

MetaTrader 5Trading | 11 gennaio 2022, 15:23
132 0
Dmitriy Skub
Dmitriy Skub

Introduzione

Un saggio proverbio spesso attribuito a vari personaggi famosi dice: "Chi non sbaglia non farà mai nulla." A meno che tu non consideri l'ozio stesso un errore, questa affermazione è difficile da discutere. Ma puoi sempre analizzare gli errori passati (tuoi e degli altri) per ridurre al minimo il numero dei tuoi errori futuri. Cercheremo di esaminare le possibili situazioni che si verificano durante l'esecuzione di lavori nel servizio con lo stesso nome.

Il nostro scopo sarà quello di renderlo il più obiettivo possibile. In ogni caso, rappresenterà il punto di vista della parte esecutiva: uno sviluppatore. Prima di procedere alle situazioni reali, devo sottolineare quanto segue:

Eventuali somiglianze con nomi reali, soprannomi, immagini e altro materiale visivo sono casuali. Tutte le asserzioni e i calcoli statistici esposti di seguito rappresentano l'opinione personale dell'autore di questo articolo e non pretendono di essere verità assolute.


1. Servizio Jobs: perché ne abbiamo bisogno?

Utilizzare o meno il servizio Jobs, una decisione che ognuno prende per se stesso. Per me è un sì definitivo, va usato. E di seguito sono riportati alcuni pensieri a riguardo. Considerando i principali problemi che possono sorgere nell'interazione tra il cliente e l'esecutore, possiamo evidenziare quanto segue:

  • Specifiche dei requisiti (RS) poco chiare o ambigue a seguito delle quali la parte esecutiva produce qualcosa di totalmente diverso da ciò che il cliente si aspetta;
  • Timori che il cliente venga imbrogliato dall'esecutore che può ottenere il pagamento anticipato senza fare il lavoro o farne solo una parte;
  • Timori che l'esecutore venga ingannato dal cliente che può ottenere il lavoro finito senza pagare la restante parte dell'importo concordato;
  • L'emergere di situazioni discutibili (spesso senza uscita) in cui entrambi sono sicuri al 100% di avere ragione e non sono in alcun modo disposti a cercare un compromesso.

Le ultime tre delle situazioni di cui sopra possono essere completamente risolte; il problema della RS poco chiara può anche essere affrontato. C'è fondamentalmente solo un punto debole: la necessità per il cliente / esecutore di fare alcune mosse extra, come effettuare un ordine, trasferire il pagamento, passare attraverso fasi di avanzamento intermedie, ecc. Ma credo che questo sia un piccolo prezzo da pagare per la tranquillità e la certezza che il denaro non sarà sprecato e il lavoro sarà fatto.

Quindi hai finalmente deciso di utilizzare il servizio Jobs e di effettuare un ordine per lo sviluppo o la modifica di un indicatore, EA o uno script. Ci si aspetta che tu abbia iniziato familiarizzando con le: Regole di utilizzo del servizio Jobs. Se non l'hai ancora fatto, ora è il momento di colmare questa piccola lacuna di conoscenza.

Si consiglia inoltre di leggere attentamente gli articoli "How to Order an Expert Advisor and Obtain the Desired Result" e "How to Order a Trading Robot in MQL5 and MQL4". Ti aiuteranno a entrare nell'idea di fare affari seri ed efficienti. Dopotutto, sei una persona seria, un futuro trader o uno ben consolidato. Perché questa professione richiede un approccio ponderato e scrupoloso.


2. Tipi comuni di ordini

Proviamo a classificare i tipi più comuni di ordini che sono molto spesso associati a situazioni problematiche. Senza pretendere di essere esaustivo, l'elenco comprende i seguenti tipi di ordini.


2.1. Il Forex è molto semplice

Un cliente che non sa davvero cosa vuole e ha una comprensione molto scarsa di come tutto deve funzionare. Di norma, questa sarebbe una persona nuova al Forex, la quale ha raccolto un'infarinatura di informazioni e ha pensato che il Forex sia molto facile. Avendo individuato una sezione favorevole del grafico con due MA incrociati e aggiunto un MACD per completarlo (senza nemmeno rendersi conto che quelli sono in realtà gli stessi due МА), crede di aver trovato un buon sistema di trading che deve solo essere codificato sotto forma di Expert Advisor per iniziare a rastrellare l'impasto.

Gli ordini effettuati da tali clienti sembrano essere approssimativamente i seguenti: "Expert Advisor semplice", "Indicatore semplice" e altre varianti tra cui le parole "semplice" e "non complicato". Di conseguenza, il pagamento offerto è di 10-20 crediti. Il servizio Jobs semplicemente non consente di offrire meno.

Quando si parla con un cliente del genere, raramente ammette di essere un principiante e che il suo ordine potrebbe essere una sciocchezza che non ha nemmeno un prezzo adeguato. Per alcuni motivi, gli anglofoni tendono ad ammetterlo subito e persino a chiedere un consiglio sul funzionamento del loro sistema.

L'unico consiglio che può essere dato qui è quello di testare manualmente il sistema su un intervallo più lungo (almeno su un periodo di tempo di 1 anno) prima di iniziare a utilizzare il servizio Jobs. In alternativa, può essere testato nella modalità visiva del tester utilizzando Expert Advisor esistenti per l'apertura / chiusura di operazioni, ad esempio Trading SIMULATOR 2 o in programmi speciali per i test.


2.2. Nella natura selvaggia degli indicatori

Un altro estremo così caratteristico dei principianti è l'uso di un sacco di vari indicatori che a volte producono segnali che si escludono a vicenda. È anche popolare utilizzare una combinazione di un numero di indicatori a diverse scale (a volte diversi ordini diversi) in una finestra di indicatori e osservare i segnali che indicano gli incroci tra di loro. E i principianti del Forex non sono gli unici a cui viene data questa abitudine.

Tutti i tentativi di spiegare che non è fattibile vengono rallentati da una persistente mancanza di comprensione e riferimenti astratti a un programmatore che lo ha fatto facilmente, come ABC, ecc. Detto questo, meno tempo si trascorre utilizzando il terminale, più persistente è la mancanza di comprensione: sembra esistere una proporzionalità inversa.

Facciamo un esempio di tale combinazione di indicatori. Prendiamo RSI con un intervallo normalizzato da 0 a 100 e ATR con intervallo non normalizzato (da 0 a valore sconosciuto considerevolmente inferiore all'unità). Entreremo in BUY quando ATR attraversa l'RSI dal basso verso l'alto sulla barra successiva. Un rettangolo grigio nell'immagine sottostante (Fig.1) rappresenta un segnale di acquisto emergente.

Lo segneremo con una linea tratteggiata verticale e vedremo cosa succede dopo.

Fig.1. Il segnale BUY è emerso

Fig.1. È emerso il segnale BUY

L'immagine successiva (Fig.2) suggerisce che il segnale di acquisto è ancora lì ed è ancora più forte, ma per qualche motivo si è spostato a sinistra (la posizione della linea tratteggiata verticale sull'asse del tempo rimane invariata). Sembra che avremmo dovuto entrare prima. C'è qualcosa che non va qui.

Fig.2. Il segnale BUY è ancora lì

Fig.2. Il segnale BUY è ancora lì

La terza immagine (Fig.3) è completamente confusa: il segnale è sparito, è scomparso come se non fosse mai esistito. Questi sono i risultati del ridimensionamento (quando diversi indicatori con intervalli di valori diversi devono essere visualizzati nello stesso grafico in modo che tutti siano visibili contemporaneamente).

Fig.3 Il segnale è scomparso

Fig.3. Il segnale è scomparso


Un'altra situazione comune è rimanere intrappolati nell'illusione quando si guardano i risultati delle prestazioni di un indicatore nel corso della cronologia. Non c'è una chiara comprensione del fatto che le letture di un gran numero di indicatori cambiano a seconda del prezzo che cambia e i loro valori finali si formano al completamento di alcune barre nel grafico quando potrebbe effettivamente essere troppo tardi per aprire una posizione. Questo è ciò che significa "ridisegnare". L'esempio più grafico di tale indicatore sarebbe probabilmente Zig Zag.

Le discussioni con un tale cliente nel tentativo di trovare un gatto nero scomparso in una stanza buia possono richiedere molto tempo, durando per tutto il tempo consentito dalla pazienza di entrambe le parti, e possono diventare un vero test psicologico.

C'è un suggerimento molto semplice: monitorare gli indicatori in dinamica. Verificare se i segnali scompaiono quando si modifica la scala del grafico lungo l'asse del tempo e/o del prezzo. La curva o l'istogramma di un indicatore ha un aspetto diverso sulle barre precedenti quando il prezzo cambia? Puoi facilmente controllarlo nella modalità visiva del tester facendo cadere il tuo set di indicatori sul grafico. Qualsiasi Expert Advisor, ad esempio fornito nel terminale, può essere utilizzato qui.


2.3. Automazione manuale del sistema

Questo è uno dei tipi più complessi. Si può essere un trader affermato e di successo, ma rimane perplesso quando si cerca di mettere il suo sistema sotto forma di un algoritmo o si finisce per descrivere ogni barra del grafico con la specifica del prezzo e dei valori dell'indicatore. Questo accade perché il suo trading si basa sull'intuizione, cioè l'elaborazione delle informazioni di trading è nascosta nel subconscio e solo il risultato finale viene generato come output. Un tale trader non sa davvero come è stato derivato il risultato.

Se la formalizzazione del sistema fallisse, l'opzione migliore sarebbe quella di automatizzare gradualmente il processo di trading. Qualsiasi sistema è costituito da elementi standard (apertura/chiusura di posizioni/ordini, controllo dei rischi, gestione delle posizioni, ecc.). Suddividi il tuo lavoro in fasi e affronta ogni fase separatamente. A poco a poco, passo dopo passo, il processo di trading potrebbe diventare quasi completamente automatizzato.

La seconda opzione è quella di mettere immediatamente da parte l'idea di un sistema di trading completamente automatizzato e concentrarsi sullo sviluppo di un sistema semi-automatizzato. Può essere approssimativamente generalizzato come segue: il trader decide dove e quando le posizioni devono essere aperte mentre il lavoro rimanente viene svolto dall'Expert Advisor. In alternativa, è possibile impostare il tempo e/o la fascia di prezzo in cui è consentita l'iscrizione, a determinate condizioni, e l'Expert Advisor monitorerà quindi tali condizioni per aprire posizioni all'interno degli intervalli specificati.

Pertanto, sarebbe ottimale applicare due approcci. Il primo è quello di iniziare con lo sviluppo di un sistema semi-automatizzato che gestirebbe la maggior parte delle operazioni di trading di routine. E il secondo approccio consiste nel suddividere il tuo lavoro in più fasi. Ognuno di essi deve rappresentare un'attività separata risultante nella versione finale dell'Expert Advisor. È anche possibile una combinazione dei due approcci di cui sopra.


2.4. Ottenere l'Expert Advisor per preparare il tè

Di tanto in tanto, appaiono ordini in cui l'elenco delle funzioni direttamente correlate al trading costituisce solo una piccola parte della RS. Mentre la parte principale include il monitoraggio delle condizioni del computer e della rete, l'invio di SMS ed email, il monitoraggio di vari malfunzionamenti, incluso il minimo tra di essi, e i cambiamenti nell'ambiente intorno all'Expert Advisor. Completalo con la notifica audio (o vocale) di tutto quanto sopra disponibile per il proprietario.

Tutto ciò è, ovviamente, fattibile a condizione che sia il cliente che la parte esecutiva siano desiderosi di farlo. Tuttavia, i clienti sono di norma piuttosto riluttanti quando si tratta di mettere soldi per l'implementazione di queste funzioni. E l'Expert Advisor ha davvero bisogno di coprire tutto? Io credo di no. Un tale Expert Advisor non sarà comunque in grado di operare in modo assolutamente indipendente: esiste un errore fatale (ad esempio un'interruzione prolungata dell'alimentazione).

Pertanto, le funzioni assegnate all'Expert Advisor devono essere ragionevolmente limitate. Non solo richiederà meno soldi per il suo sviluppo, ma garantirà anche un funzionamento più affidabile dell'Expert Advisor stesso poiché meno funzioni si tradurranno in meno errori.


2.5. Fallo, non so cosa

La prima parte di questa nota frase, "vai lì, non so dove", viene solitamente utilizzata dal cliente e dall'esecutore l'uno verso l'altro alla fine del lavoro. A causa del fatto che il sistema di trading in quanto tale non è stato pensato abbastanza bene, il cliente inizia a inventare modifiche, aggiunte e rimozioni dalla RS nel corso dello sviluppo di un Expert Advisor (o di un indicatore).

A mio parere, questo è abbastanza accettabile se un tale cambiamento non richiede molto sforzo dal punto di vista della programmazione. Un piccolissimo dettaglio potrebbe essere trascurato o semplicemente dimenticato. Tuttavia, spesso si tratta di modifiche che non sembrano molto consistenti al cliente, ma in realtà richiedono una modifica di una parte sostanziale dell'Expert Advisor. Ancora più importante, tali modifiche richiedono l'alterazione della logica del programma. Uno degli esempi comuni è una sostituzione in base alla quale, invece di aprire ordini di mercato, l'Expert Advisor deve aprire ordini in sospeso o viceversa.

L'unico consiglio che può essere dato qui è quello di cercare piena chiarezza sulla RS per la parte esecutiva, così come il cliente (per quanto strano possa sembrare). La modifica della RS a volte può richiedere più tempo del lavoro stesso. E credo che questo sia normale perché anche l'identificazione degli obiettivi fa parte del lavoro.


3. L'RS ideale com'è?

Parlando della struttura delle specifiche dei requisiti per uno sviluppo astratto, l'RS ideale potrebbe essere quasi come indicato di seguito:

3.1. Ambiente operativo

Il terminale (MetaTrader 4/MetaTrader 5) per uno sviluppo richiesto. Questa cosa più importante è di solito trascurata nella RS e persino nell'oggetto di un ordine. Questo deve essere specificato nell'ordine soggetto al fatto che non tutti gli sviluppatori hanno una conoscenza equa del linguaggio MQL5 o, al contrario, potrebbero essere scesi a MQL5 senza prima imparare MQL4.

3.2. Occuparsi del Centro/Broker dove verrà applicato lo sviluppo

Queste informazioni sono principalmente necessarie quando si sviluppano EA (o script di trading). Ci possono essere varie peculiarità: differenze nell'esecuzione degli ordini, dimensione minima / massima del lotto, posizioni overnight, numero di cifre nelle quotazioni, valuta del conto, quotazioni durante il fine settimana e se hanno bisogno di elaborazione, spread fisso o fluttuante, lavoro basato sull'apertura di nuove barre o basato su tick, ecc.

Sarebbe meglio se un conto demo fosse aperto dal cliente con il suo DC / Broker nella valuta del conto prevista per essere ulteriormente fornito allo sviluppatore. Questo è necessario perché anche per aprire un conto demo con alcuni DC (ad esempio Oanda), è necessario essere registrati sul loro sito con determinati moduli da compilare, ecc. Risparmia tempo allo sviluppatore. Potrebbe essere necessario nel debug e nel lavoro di test.

3.3. Se lo sviluppo è destinato a un conto reale o solo a un account di test / demo

La differenza è infatti cruciale. Mentre la velocità operativa è della massima importanza nei test (influisce sul tempo di ottimizzazione), la gestione degli errori e il meccanismo di ripristino che ricostruiscono lo stato corretto dell'Expert Advisor in diversi errori di connessione, riavvii del terminale, ecc. sono una priorità quando si ha a che fare con un account reale. Detto questo, la velocità di test dell'Expert Advisor per un account reale può diventare anche diverse decine di volte più lenta. Ancora una volta, ciò influenzerebbe notevolmente il costo dello sviluppo verso l'alto o verso il basso.

Questo è il momento in cui devi chiederti: ho davvero bisogno di un Expert Advisor per un conto reale? Se lo sviluppo è sperimentale e l'algoritmo non è stato finalmente impostato e probabilmente verrà modificato e rivisto, non ha senso ordinare con un account reale in vista. Inoltre, è anche negativo facendo sì che l'ottimizzazione funzioni notevolmente più lentamente. Uno sviluppo successivo per un account reale può essere ulteriormente ordinato dopo che l'algoritmo è stato elaborato. Non sarà costoso.

3.4. Descrizione dell'algoritmo operativo

Si consiglia inoltre di fornire un elenco provvisorio di parametri esterni (se si prevede di utilizzare) specificando i nomi preferiti e i valori predefiniti. Tutto ciò accelera significativamente le fasi di lavoro di routine per uno sviluppatore e aiuta a evitare di porre domande inutili e cercare chiarimenti dal cliente.

3.5. Tipo di informazioni visualizzate

Questo deve essere specificato poiché non tutto ciò che il cliente desidera può essere visualizzato. Ed è meglio risolverlo quando si finalizza la RS piuttosto che in seguito. Se si prevede che qualcosa venga visualizzato durante il funzionamento di un Expert Advisor o di un indicatore, è consigliabile fornire un modulo approssimativo e specificare il colore di sfondo del grafico previsto per tale operazione (nero, chiaro, bianco o qualsiasi altro).

Se sono necessarie illustrazioni per una migliore spiegazione dell'algoritmo operativo, è necessario fornirlo. Un'illustrazione supportata da commenti pertinenti può dare un'idea più semplice e chiara di un algoritmo rispetto a poche pagine di testo normale.

La specifica dei requisiti adeguatamente preparata è senza dubbio fondamentale per il completamento con successo dello sviluppo e l'ottenimento del risultato atteso. Quindi non cercare di risparmiare tempo quando dettagli i punti nel tuo RS. E i vostri sforzi saranno ripagati nello sviluppo.

3.6. Varie

Qui di solito puoi trovare termini e requisiti generali. Potrebbe essere un requisito fornire un testo sorgente (codice) al completamento dell'ultima fase di lavoro, commenti estesi nel testo sorgente, periodo di garanzia per la correzione degli errori e altri requisiti.


4. Alcune parole su debug e test

Questa è la fase in cui le funzioni effettivamente svolte da un indicatore o da un Expert Advisor vengono verificate rispetto alle funzioni elencate nella RS. Come forse saprai, una delle leggi di Murphy sulla programmazione informatica dice: ogni programma ha almeno un bug. C'è anche un corollario a questo punto che afferma: ogni bug rilevato e risolto è l'ultimo tranne uno. Questo è, ovviamente, uno scherzo, ma la "legge" di cui sopra non è lontana dalla verità quando si tratta di programmi complessi (sia Expert Advisor che indicatori).

Quindi si può dedurre un'altra conclusione: non si deve sospettare uno sviluppatore di intenti malevoli e incompetenza non appena uno o forse più bug vengono rilevati dopo la consegna e l'accettazione del lavoro. Ritengo che la qualità del servizio fornito dalla parte esecutiva sia determinata principalmente dalla correzione tempestiva ed efficiente degli errori rilevati nel corso del lavoro.

A mio parere, lo sviluppo / test incrementale è ottimale quando si testano soluzioni complesse che implementano algoritmi con più condizioni logiche e ramificazione. Il problema deve essere diviso in diverse parti logicamente indipendenti per essere gradualmente risolto / testato dal cliente e dalla parte esecutiva insieme. Nella fase finale, il test riguarda l'interazione tra le parti testate in precedenza e il lavoro nel suo complesso.

La nozione di complessità/semplicità è certamente soggettiva e dipende in gran parte dall'esperienza della parte esecutrice e dalla comprensione di tutte le sfumature del lavoro da parte del cliente. I metodi e le tecniche di test forniti da MetaTrader 4 e MetaTrader 5 sono piuttosto diversi, tanto che alcuni clienti non hanno idea (o dimenticano: in realtà mi sono imbattuto in questo in passato) della possibilità di eseguire un Expert Advisor su dati cronologici nel tester. Ma ciò che è importante è che il tester è disponibile in modalità di test visivo.

È uno dei metodi di test più potenti e convenienti in base al quale un indicatore o un Expert Advisor può essere testato su quotazioni cronologiche ricevute in modalità veloce in pochi minuti, monitorando visivamente i risultati delle prestazioni rappresentati dalle operazioni eseguite e dalle informazioni visualizzate. L'aspetto delle quotazioni può essere rallentato o addirittura temporaneamente sospeso per darti il tempo di analizzare i dettagli di un determinato trade.

Dopo il test nel tester, è possibile verificare l'efficienza operativa di Expert Advisor eseguendolo su un account demo. Un giorno e mezzo di lavoro in tempo reale su un account demo è di solito sufficiente per essere completamente sicuro di esso. A condizione, sempre, che non vengano utilizzati intervalli di tempo molto lunghi (una settimana o più).


5. Descrizione degli errori rilevati

Vorrei fare alcune osservazioni sul modo ottimale di descrivere gli errori rilevati dal cliente. Parlando di esempi estremi di come non descrivere gli errori, verrebbe fuori qualcosa del genere: "Il tuo Expert Advisor non funziona; avrebbe dovuto aprire molte posizioni, ma non ce n'era nemmeno una".

Senza avere alcuna informazione sullo strumento, sul periodo di tempo, sui parametri impostati, ecc., lo sviluppatore può solo indovinare cosa stava succedendo nel terminale del cliente.

A mio parere, gli errori / carenze rilevati sono meglio descritti utilizzando immagini grafiche. MetaTrader 4 e MetaTrader 5 offrono un'opzione per salvare il grafico come file immagine, come GIF e BMP in MT4 e GIF, BMP e PNG in МТ5. PNG è uno dei formati preferiti in quanto preserva completamente la nitidezza dell'immagine.

La nitidezza dell'immagine è molto importante per valutare correttamente la posizione di linee, barre e valori numerici del grafico salvato.

Nel terminale МТ4, appare quasi come mostrato di seguito (Fig.4). Per fare ciò, clicca con il pulsante destro del mouse sul grafico richiesto nel terminale e verrà visualizzato un menu a comparsa.

Fig.4. Salvataggio dell'immagine del grafico in un file

Fig.4. Salvataggio dell'immagine del grafico in un file


Su МetaТrader 5, c'è una procedura simile: lo stesso comando Salva come immagine è selezionato nel menu che è, tuttavia, un po 'diverso nei comandi che contiene.

Una volta selezionato il comando di menu, verrà visualizzata una finestra di dialogo aggiuntiva per impostare la risoluzione e l'area dell'immagine da salvare. Questo è mostrato di seguito nella Fig.5:

Fig.5. Impostazione dei parametri dell'immagine da salvare

Fig.5. Impostazione dei parametri dell'immagine da salvare


Per salvare solo l'immagine di una finestra con un grafico, selezionare Grafico attivo (così come è). L'opzione Area di lavoro attiva selezionata comporterà il salvataggio dell'immagine dell'intera finestra del terminale che, a volte, può rivelarsi utile quando è necessario mostrare più grafici contemporaneamente.

Non è consigliabile modificare la risoluzione del grafico attivo poiché potrebbe compromettere la qualità dell'immagine salvata.

L'immagine può anche essere salvata utilizzando il tasto di scelta rapida Alt + PrtScr o PrtScr da solo, il quale consente di salvare una cattura della finestra corrente o l'intero screenshot negli appunti per essere ulteriormente trattato in un editor grafico.

È quindi possibile aprire il file grafico risultante in un editor grafico e modificarlo (se necessario), ad esempio aggiungendo una nota di testo relativa a un probabile errore nei punti pertinenti del grafico. Il modo più semplice per modificare è utilizzare l'editor grafico Paint in bundle con Windows. È comunque una questione di gusto e abitudine.


6. Trappole nascoste in RS

Di norma, spuntano per vari motivi: mancanza di comprensione di tutte le sfumature dei prezzi nelle borse e nel Forex, mancanza di considerazione delle peculiarità del ridimensionamento lungo l'asse del tempo e l'asse dei prezzi, ecc. Se lo sviluppatore presterà attenzione a questi punti quando discute di RS o sceglie un approccio formale, dipende in gran parte dalle sue qualifiche e dalla conoscenza delle peculiarità del trading di mercato. E, naturalmente, sull'onestà.

Usando espressioni figurative dell'arte popolare, quando si scrive un RS il cliente spesso considera il comportamento di "una mucca sferica nel vuoto" piuttosto che un vero e proprio mercato valutario o finanziario, idealizzando così estremamente il comportamento della serie di prezzi.

6.1. Distinzione delle variazioni di prezzo

Diamo un'occhiata al seguente esempio pratico. Una frase nella specifica dei requisiti è sostanzialmente come segue: quando il prezzo raggiunge il valore impostato dal parametro esterno, apri una posizione di acquisto. Si potrebbe pensare, e nessuna domanda sarebbe mai stata sollevata a riguardo, che c'è un prezzo, il valore è impostato e quindi basta scrivere una condizione di trigger e il gioco è fatto.

L'unica "sciocchezza" trascurata qui è che il prezzo si muove nel grafico in modo discreto (da un punto all'altro) e non continuamente. Abilitando l'opzione del terminale Mostra grafico come una linea spezzata in modo da vederlo sullo schermo non renderà continuo il movimento dei prezzi. Le serie di prezzi effettive nel grafico saranno ancora costituite da punti discreti.

Può essere illustrato dal seguente esempio di grafico tick (in forma approssimativa).

Fig.6. Variazione di prezzo discreta

Fig.6. Variazione di prezzo discreta

Il valore di prezzo specificato viene visualizzato come una linea continua orizzontale, mentre i punti rossi e blu rappresentano i valori di prezzo effettivi osservati. Osservando da vicino il grafico, puoi vedere che tecnicamente il prezzo non ha mai raggiunto il livello specificato. Cioè, seguendo la logica della RS originale, la condizione non è mai stata soddisfatta.

Una nota importante: tutti i confronti dei prezzi devono essere mantenuti accurati fino a un certo punto. Ad esempio, se le quotazioni dello strumento hanno cinque cifre dopo il punto decimale, allora un punto è uguale a 0,00001: questa sarà la precisione per i confronti dei prezzi da effettuare. Devi anche tenere presente che ci sono strumenti (ad esempio mini contratti futures) in cui la discrezionalità della variazione dei prezzi è superiore a un punto.

Quindi, anche se possiamo vedere che il prezzo sembra aver raggiunto il livello specificato, la condizione, come stabilito nella RS fornita, non è mai stata soddisfatta. Al fine di portare la nozione idealistica del prezzo introdotto nella RS in linea con la realtà, devi procedere come segue: aggiungi due limiti al livello esistente, superiore e inferiore. Sono mostrati come una linea tratteggiata nella Figura 6 precedente. La gamma di questi limiti dipende da un determinato sistema di trading. Nella maggior parte dei casi, dovrebbero essere sufficienti 2-3 unità di diffusione media.

Quindi tutti i punti che entrano nell'area tra le linee tratteggiate saranno considerati come se avessero raggiunto il valore specificato. Nella figura sopra sono circondati in verde.

Torniamo al nostro RS e modifichiamolo come segue: quando il prezzo raggiunge il valore impostato dal parametro esterno più/meno delta, apri una posizione di acquisto. Ora è molto meglio.

C'è un altro punto da considerare, legato al fatto che la connessione con il server del broker può andare persa in qualsiasi momento. Fino a quando la connessione non è tornata, il prezzo può andare a qualsiasi distanza verso l'alto o verso il basso dal livello specificato. Quest'area (di connessione persa al server del broker) è delineata in un rettangolo rosa nella figura precedente. Ovviamente, una situazione di questo tipo deve essere considerata anche nella RS.

Modifichiamo ancora una volta il nostro RS: quando il valore del prezzo precedente è inferiore a quello impostato dal parametro esterno meno delta e il valore corrente rientra nell'intervallo del valore impostato dal parametro esterno più/meno delta, a condizione che l'intervallo di tempo tra loro non sia maggiore di quello specificato, apri una posizione di acquisto. Ora tutto è corretto.

6.2. Attivazione in un momento esatto specificato

Un RS dice: per posizionare due ordini di acquisto e vendita in sospeso a una data distanza dal prezzo al momento impostato dal parametro esterno. Qui è necessario distinguere tra due tipi di terminali: МТ4 e МТ5. Mentre MetaTrader 5 consente di utilizzare il timer con discrezione minima di un secondo e la stessa precisione del conto alla rovescia temporale, il linguaggio MQL4 di MetaTrader 4 non prevede un timer.

Pertanto, per un conto alla rovescia temporale standard in МТ4, di solito usiamo il tempo dei tick di prezzo in entrata dello strumento su cui viene utilizzato l'Expert Advisor o l'indicatore. Poiché le tick non appaiono regolarmente e gli intervalli di tempo tra le tick successive possono essere piuttosto grandi facendo poche decine di secondi, a volte anche minuti in un mercato inattivo, si scopre che non saremo in grado di garantire una precisione assoluta nell'attivazione degli ordini in un momento specificato. Un altro metodo standard di conto alla rovescia temporale su МТ4 è quello di utilizzare un Expert Advisor in loop, il che è abbastanza scomodo per lo sviluppo e ha una serie di aspetti negativi.

Quindi, questa parte della RS deve essere modificata meglio come segue: per posizionare due ordini di acquisto e vendita in sospeso a una data distanza dal prezzoal momento impostato dal parametro esterno con l'errore specificato.

6.3. Uso di termini generali e multidimensionali

Ecco un esempio tipico: quando il mercato è piatto, fai così. Quando la tendenza è chiaramente in atto, fai così. In tal modo, il cliente ritiene che non siano necessari ulteriori dettagli in un compito così semplice e diretto come la programmazione di una tendenza / flat. Immagino che non siano necessari commenti qui.

C'è un altro esempio: mettere un ordine in sospeso sull'estremità. L'interpretazione dell'estremo da parte del cliente è ovviamente assente nella RS. In effetti, perché dare una spiegazione se può essere derivata dal grafico? Il fatto che l'estremo possa essere ottenuto utilizzando una serie di algoritmi diversi, ognuno dei quali ha i suoi vantaggi e svantaggi, può essere una sorpresa per il cliente.

6.4. Uso di parole comuni con significato generale

Questo si riferisce ai termini che sembrano essere chiari quando vengono utilizzati nella vita di tutti i giorni, pur non essendo assolutamente adatti per una specifica dei requisiti. Ecco alcuni esempi. Un RS dice: se la linea dell'indicatore ha formato due rigonfiamenti che si susseguivano uno dopo l'altro, il secondo è inferiore al primo... e così via, dando così una descrizione della divergenza utilizzata.

Sorgono moltissime domande dopo aver letto quanto sopra: cosa può essere considerato un rigonfiamento, la distanza massima/minima alla quale tali "rigonfiamenti" possono essere situati l'uno dall'altro, quanto più basso deve essere il secondo rigonfiamento dal primo, ecc.

Anche le parole come molto/poco, piccolo/grande e così via sono usate molto frequentemente. Devi capire che la programmazione si basa sulla matematica, la quale richiede precise definizioni quantitative. Non c'è altro modo.


7. Quando ricorrere all'arbitrato?

Ovviamente, devi presentare domanda di arbitrato prima che il lavoro sia completato, cioè prima di passare attraverso l'ultima fase, cioè la consegna del lavoro / pagamento. In caso contrario non ci sarà alcun fattore finanziario per vincolare la parte esecutrice e il cliente. Questa condizione è essenziale.

Sembra che l'unico motivo per ricorrere all'arbitrato possa essere il verificarsi di un problema che non può essere risolto tra il cliente e la parte esecutiva in privato. Ad esempio, il cliente è convinto dell'operazione errata (in disaccordo con la RS) del lavoro consegnatogli, mentre l'esecutore sta cercando di dimostrare il contrario.

Un'altra opzione possibile è la "scomparsa" del cliente o della parte esecutiva per un lungo periodo durante il quale non rispondono a messaggi o email private, ecc. Nel frattempo, il denaro del cliente è bloccato nel conto e il lavoro non è completato. Oppure, al contrario, il lavoro è stato svolto da tempo, ma non c'è modo di arrivare al pagamento. Ci possono essere diverse circostanze coinvolte, ma la situazione deve e può, tuttavia, essere risolta attraverso l'arbitrato.

La situazione in cui le parti hanno fretta di finalizzare la RS e iniziare a lavorare è molto comune. In seguito, sembra che la RS, nella forma in cui è stata fornita, non possa essere utilizzata e richieda ulteriori dettagli e chiarimenti su alcuni punti. Di conseguenza, potrebbe essere necessario rivedere il valore dell'ordine. Il lavoro può essere ripristinato da questa fase solo attraverso l'arbitrato. Fai quindi meglio a non affrettarti a iniziare a lavorare e piuttosto prenderti il tuo tempo per passare di nuovo attraverso la RS.


Conclusione

Speriamo che questo articolo sia stato utile per gli utenti nuovi al servizio Jobs, principalmente per i clienti alle prime armi. È probabile che questo articolo non abbia coperto tutti i problemi, ma un viaggio di mille miglia inizia con un singolo passo. Dovremmo essere più cordiali gli uni con gli altri e non sfogare così tante emozioni negative nel mondo che ci circonda: non renderanno la vita di nessuno più facile, che si tratti della vita di un cliente o di una parte esecutiva.


Un elenco di domande preferite poste dai clienti

1. Perché alcuni sviluppatori sono riluttanti a parlare su Skype, ICQ, telefono, email, ecc??

Credo che ci siano due ragioni principali per questo:

In primo luogo, uno sviluppatore può avere parecchi clienti e se inizia a parlare on-line con tutti loro (bene, se non deve farlo contemporaneamente), non avrà quasi tempo per la programmazione stessa. Pensare che si possano spiegare le cose più velocemente usando Skype o ICQ è uno dei miti comuni.

In secondo luogo, tutte queste opzioni mancano di una caratteristica importante: la capacità di documentare ciò che è stato detto. Il punto è che quando si tratta di controversie e arbitrati, la comunicazione scritta relativa all'ordine pertinente può dimostrare la colpa o l'innocenza di entrambe le parti.

2. Perché l'avvio di un EA/indicatore compilato (file .ex4 o .ex5) causa l'arresto del terminale?

È molto probabile che la versione del terminale che hai installato sia vecchia rispetto a quella utilizzata nel processo di compilazione. È necessario aggiornare il terminale all'ultima versione disponibile.

3. Quali sono gli errori che si verificano durante la compilazione del file EA / indicatore - non viene fatto riferimento alla funzione 'xxxxxx' e verrà rimossa dal file exp?

Questo non è un errore. Il messaggio dice che la funzione 'xxxxxx' non viene utilizzata ('xxxxxx' è sostituita da un nome di funzione specifico) e non sarà presente nel file compilato. È possibile ignorare questo messaggio in quanto la presenza di questa funzione "extra" non influisce in alcun modo sul funzionamento di un EA o di un indicatore.


4. Qual è l’errore che si verifica durante la compilazione del file EA/indicator - impossibile aprire il file "хххххх" include?

Il messaggio dice che il file "хххххх" non è stato copiato durante il trasferimento di file sul computer o è stato copiato nella directory sbagliata. Di solito, i file .mqh devono essere inseriti nella directory include del terminale.


5. Perché non ci sono segni per mostrare dove una posizione è stata chiusa a livello di Take Profit/ Stop Loss durante il funzionamento dell'Expert Advisor?

Questa funzione è disponibile solo quando si testa un Expert Advisor nello Strategy Tester. Non è disponibile quando si lavora con un account reale o demo. Una transazione di interesse può essere trascinata dalla cronologia del conto al grafico tenendo premuto il pulsante sinistro del mouse. I segni che indicano le posizioni di apertura e chiusura appariranno quindi nel grafico, essendo collegati da una linea tratteggiata come durante i test nello Strategy Tester.


6. Una posizione non è stata aperta (non è stato effettuato un ordine) anche se il grafico cronologico suggerisce che sono presenti tutte le condizioni per l'ingresso.

Quello che hai affrontato è molto probabilmente il risultato del ridisegno di un indicatore le cui letture sono utilizzate nell'Expert Advisor. Le condizioni (valori dell'indicatore) presenti al momento dell'ingresso presunto non corrispondevano al segnale per l'apertura di una posizione. Poi, dopo alcune battute i valori degli indicatori sono cambiati e hanno preso la loro forma finale, il che è ciò che possiamo vedere nella cronologia. Questo può essere facilmente controllato utilizzando la modalità visiva del tester.


7. Come annullare il lavoro nella fase Prototipo/Modello Pilota - Dimostrazione?

Può essere annullato solo attraverso l'arbitrato.


Link consigliati

  1. Rules of Using the Jobs Service
  2. How to Order an Expert Advisor and Obtain the Desired Result
  3. How to Order a Trading Robot in MQL5 and MQL4

Tradotto dal russo da MetaQuotes Ltd.
Articolo originale: https://www.mql5.com/ru/articles/361

La trasformazione di Box-Cox La trasformazione di Box-Cox
L'articolo ha lo scopo di far conoscere ai suoi lettori la trasformazione di Box-Cox. Vengono affrontate le problematiche relative al suo utilizzo e vengono forniti alcuni esempi che permettono di valutare l'efficienza della trasformazione con sequenze casuali e quotazioni reali.
Analisi di regressione multipla. Generatore di strategie e tester tutto in uno Analisi di regressione multipla. Generatore di strategie e tester tutto in uno
L'articolo fornisce una descrizione delle modalità di utilizzo dell'analisi di regressione multipla per lo sviluppo di sistemi di trading. Dimostra l'uso dell'analisi di regressione per l'automazione della ricerca strategica. Come esempio viene fornita un'equazione di regressione generata e integrata in un EA senza richiedere un'elevata competenza nella programmazione.
Sbarazzarsi delle DLL auto-prodotte Sbarazzarsi delle DLL auto-prodotte
Se la funzionalità del linguaggio MQL5 non è sufficiente per svolgere le attività, un programmatore MQL5 deve utilizzare strumenti aggiuntivi. Deve passare a un altro linguaggio di programmazione e creare una DLL intermedia. MQL5 ha la possibilità di presentare vari tipi di dati e trasferirli all'API ma, purtroppo, MQL5 non può risolvere il problema relativo all'estrazione dei dati dal puntatore accettato. In questo articolo punteremo tutte le "i" e mostreremo semplici meccanismi di scambio e lavoro con tipi di dati complessi.
Utilizzo di MetaTrader 5 come Fornitore di segnali per MetaTrader 4 Utilizzo di MetaTrader 5 come Fornitore di segnali per MetaTrader 4
Analizza gli esempi di tecniche su come l'analisi del trading può essere eseguita sulla piattaforma MetaTrader 5 e MetaTrader 4. L'articolo ti mostrerà come creare un semplice fornitore di segnali nel tuo MetaTrader 5 e connetterti ad esso con più client, anche eseguendo MetaTrader 4. Inoltre scoprirai come puoi seguire i partecipanti all’Automated Trading Championship nel tuo vero conto MetaTrader 4.