Discussione sull’articolo "Sviluppo di un Expert Advisor di trading da zero"

 

Il nuovo articolo Sviluppo di un Expert Advisor di trading da zero è stato pubblicato:

In questo articolo, discuteremo come sviluppare un robot di trading con una programmazione minima. Naturalmente, MetaTrader 5 offre un elevato livello di controllo sulle posizioni di trading. Tuttavia, utilizzare solo la capacità manuale di effettuare ordini può essere piuttosto difficile e rischioso per gli utenti meno esperti.

L'Expert Advisor presentato in questo articolo può essere migliorato in vari modi per lavorare con set di parametri, ma ciò richiederebbe più codice che lo renderà più indipendente da MetaTrader 5.

Il grande successo di questo EA è che utilizza MetaTrader 5 stesso per eseguire azioni che non sono nel suo codice, e quindi è estremamente stabile e affidabile.




Autore: Daniel Jose

 

Buongiorno,

Molto bene, solo che non capisco una cosa. Quando inserisco l'ordine in WIN e WDO l'EA apre 6 ordini con il numero di contratti che ho inserito in "leverage". Quindi anche se voglio fare trading con 1 contratto non posso, ne apre 6.

È un concetto che ho trascurato? Sono un principiante, quindi parto da questa premessa.

Grazie mille per la condivisione.

 
Da quanto ho capito, per lavorare con questo sistema è necessario conoscere l'Algo Trading...
 
Molto bene!
 
joecafrois #:
Da quanto ho capito, è necessario conoscere AlgoTrading per lavorare con esso...

Non è necessario conoscere AlgoTrading ... ma deve essere abilitato ogni volta che si utilizza un EA (Expert Advisor), altrimenti l'EA è limitato nel suo funzionamento.

 
Feresther numero di contratti che ho inserito in "leverage". Quindi anche se voglio fare trading con 1 contratto, non posso, ne apre 6.

È un concetto che ho trascurato? Sono un principiante, quindi parto da questa premessa.

Grazie mille per la condivisione.

Potrebbe essere che il sistema stia inviando più di un ordine quando si fa clic con il mouse, i motivi potrebbero essere diversi, ma grazie per averlo segnalato 😁👍, per risolvere questo problema, dovrai aggiungere un test supplementare quando fai clic con il mouse, i punti da modificare o aggiungere sono contrassegnati in VERDE ... assicuratevi di digitarlo nel modo giusto, altrimenti l'ordine potrebbe non essere inviato o non essere accettato dal server... ma l'aggiunta di questo ulteriore test dovrebbe risolvere il problema. La logica è la seguente: quando si fa clic con il mouse, la variabile STATIC viene impostata e viene ripristinata per consentire l'invio di un nuovo ordine solo quando il mouse non viene più premuto.

inline void MoveTo(int X, int Y, uint Key)
{
        static double d_block = 0; 
        int w = 0;
        datetime dt;
        bool bEClick, bKeyBuy, bKeySell;
        double take = 0, stop = 0, price;
        bEClick  = (Key & 0x01) == 0x01;                /Cliccare con il tasto sinistro del mouse
        bKeyBuy  = (Key & 0x04) == 0x04;                //SHIFT premuto
        bKeySell = (Key & 0x08) == 0x08;                //CTRL premuto
        ChartXYToTimePrice(Infos.Id, X, Y, w, dt, price);
        ObjectMove(Infos.Id, Infos.szHLinePrice, 0, 0, price = (bKeyBuy != bKeySell ? AdjustPrice(price) : 0));
        ObjectMove(Infos.Id, Infos.szHLineTake, 0, 0, take = price + (Infos.TakeProfit * (bKeyBuy ? 1 : -1)));
        ObjectMove(Infos.Id, Infos.szHLineStop, 0, 0, stop = price + (Infos.StopLoss * (bKeyBuy ? -1 : 1)));
        if ((bEClick) && (bKeyBuy != bKeySell) && (d_block == 0)) CreateOrderPendent(bKeyBuy, Infos.Volume, (d_block = price), take, stop, Infos.IsDayTrade); else d_block = 0;
        ObjectSetInteger(Infos.Id, Infos.szHLinePrice, OBJPROP_COLOR, (bKeyBuy != bKeySell ? Infos.cPrice : clrNONE));
        ObjectSetInteger(Infos.Id, Infos.szHLineTake, OBJPROP_COLOR, (take > 0 ? Infos.cTake : clrNONE));
        ObjectSetInteger(Infos.Id, Infos.szHLineStop, OBJPROP_COLOR, (stop > 0 ? Infos.cStop : clrNONE));
};
 
esiste una versione mq4
 
Ottimo articolo, grazie.
 
Buon pomeriggio, dove posso impostare il numero di punti e il numero di lotti per il mini-indice?
 
C4rl1n #:
Buon pomeriggio, dove devo impostare il numero di punti e il numero di lotti per il mini-indice?

In realtà, in questo codice la regolazione è automatica. Si indica il finanziatore e il numero di contratti da negoziare e il codice effettua l'aggiustamento in termini di punti... Queste informazioni vengono fornite quando si posiziona l'Expert Advisor sul grafico. 😁👍

 
Capisco, è perché voglio sviluppare il mio EA, ma il numero di lotti e di punti non coincidono.