Domande su MQL5 Wizard e sulla libreria standard di classi di trading - pagina 9

 
-Alexey-:

Qual è dunque il suo scopo pratico, più che di tester? Sembra esserci, ma non si può usare. E perché qualsiasi domanda su questo argomento, ad esempio il suggerimento di introdurre tale elaborazione o scrivere un articolo da parte degli sviluppatori o qualche guida sulla gestione degli errori sono sempre accolti con silenzio dagli sviluppatori? Dopo tutto, sono i più competenti in materia - qual è il problema? Sembra strano, per non dire altro, che invece di qualcosa di veramente utile, stiamo lavorando su un mucchio di indicatori di cui nessuno ha bisogno (0 commenti, 0 richieste per loro), quando non c'è nessuna base per il trading - la capacità di aprire e chiudere le operazioni. La questione dell'emulatore di auto-trading rimane senza risposta. Mi piacerebbe sentire la risposta.

Così nessuno nasconde il fatto che la strategia guidata è solo per il tester. )) Solo e rapidamente controllare questa o quella idea e poi decidere in quale direzione andare. E la gestione degli errori non è un compito così difficile. Puoi almeno guardare come lo fanno gli altri. Per esempio, la libreria di funzioni di KimIV nel quarto forum. Penso che potrei anche scrivere un articolo su questo argomento, ma ora non ho tutto questo tempo.

E gli sviluppatori ora, mi sembra di capire, hanno tutti i loro sforzi concentrati sullo sviluppo del progetto nel suo insieme. I servizi Market, Signals e Warehouse sono sospesi nell'aria, forse qualche altro bug. Questi sono i compiti principali ora, secondo me.

 
Il punto non è se il compito è complesso o meno, ma se deve essere implementato in una libreria standard. Sarebbe una buona idea definire una lista dei compiti principali quando si scrive un EA e implementarli per gli sviluppatori, in modo che non ci sia bisogno di guardare come lo fanno gli altri, o aspettare che qualcuno abbia il tempo di scrivere un articolo.
 
beginner:

Il punto non è se il compito è complesso o meno, ma se deve essere implementato in una libreria standard. Sarebbe una buona idea definire una lista dei compiti principali quando si scrive l'EA e implementarli per gli sviluppatori, in modo che non ci sia bisogno di guardare come lo fanno gli altri, o aspettare che qualcuno abbia il tempo di scrivere un articolo.
In ogni caso, molto probabilmente dovrete aspettare che l'azienda risolva compiti di maggiore priorità. Forse in un prossimo futuro sarà implementato. Qui ho deciso di non aspettare, dato che non mi piace molto aspettare e l'ho già implementato molto tempo fa. Non c'è voluto molto tempo. Inoltre, l'ho fatto proprio all'inizio dell'apprendimento della lingua. Potreste scrivere la vostra richiesta al Service Desk. E se lo facessi? ))
 
tol64:
... Ma se lo facessi? ))

No.

Mi dispiace, ma è a questo che serve la Libreria Standard, a contenere soluzioni generiche. L'elaborazione degli errori di trading dipende molto dalle preferenze del trader.

Quindi, cari amici, facciamolo da soli.

 
tol64:
In ogni caso, probabilmente dovrà aspettare fino a quando l'azienda avrà più priorità. Forse sarà implementato in un prossimo futuro. Qui ho deciso di non aspettare, dato che non mi piace aspettare e l'ho già implementato molto tempo fa. Non c'è voluto molto tempo. Inoltre, l'ho fatto proprio all'inizio dell'apprendimento della lingua. Potreste scrivere la vostra richiesta al Service Desk. E se lo facessi? ))
L'implementazione può essere fatta da chiunque, in qualsiasi modo. Sei sicuro di aver fatto tutto in modo ottimale, corretto e bello. Naturalmente, ci possono essere molte varianti, ma solo una tipica degli sviluppatori per personalizzarla alle vostre esigenze o usarla così com'è.
 
beginner:
L'implementazione può essere fatta da chiunque e in qualsiasi modo. Siete sicuri di aver fatto tutto in modo ottimale, corretto e bello? Naturalmente, ci possono essere molte varianti, ma una tipica degli sviluppatori è sufficiente per personalizzarla alle vostre esigenze o usarla così com'è.
Non ancora testato sul reale, ma quelli che l'hanno provato (membri competenti del forum) sono abbastanza soddisfatti. Basta guardare la versione finita, è disponibile, ma per MT4. È lo stesso su MT5. Victor Kirillin ha già risposto sopra, quindi è meglio non aspettare e farlo. )) Esattamente secondo il modello che volete.
 

Ciao, ho 2 domande.

1) Nel metodo doppio CExpertSignal::Direction(), per normalizzare il risultato tra tutti i filtri, dividiamo il valore totale risultante per il valore del numero. Supponiamo di usare un solo filtro, allora secondo il codice della libreria standard, il valore del numero che =1 durante l'inizializzazione aumenterà di +1 e diventerà 2. Quindi il risultato ottenuto da un filtro viene diviso per 2. Domanda = c'è un errore?

doppio CExpertSignal::Direzione()

{

CExpertSignal *filter;

maschera lunga;

doppia direzione;

doppio risultato=m_weight*(LongCondition()-ShortCondition());

int number=1; // numero di "votati"

//---

int total=m_filters.Total();

//--- per il debug

//printf(__FUNCTION__+" : %s %d",EnumToString(m_periodo),totale);

//--- ciclo per filtri

for(int i=0;i<totale;i++)

{

//--- maschera per mappe di bit

mask=((long)1)<<i;

//--- controllo del flag di ignorare il segnale del filtro

if((m_ignore&mask)!=0) continua;

filter=m_filters.at(i);

direction=filtro.Direction();

//- il segnale di "divieto"

if(direction==EMPTY_VALUE) return(EMPTY_VALUE);

//--- controllo del flag di inversione del segnale del filtro

if((m_invert&mask)!=0) risultato=direzione;

altrimenti risultato+=direzione;

numero++;

}

//--- normalizzazione

risultato/=numero;

//--- restituire il risultato

return(risultato);

}

2) Potresti dirmi cosa significa la variabile m_adjusted_point?

Grazie.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
IlshatG:

Salve, ho due domande.


1) Non c'è nessun errore fondamentale.

2) Correzione per le citazioni a 3/5 cifre.

 
uncleVic:

No.

Mi dispiace, ma è a questo che serve la Libreria Standard, a contenere soluzioni standard. L'elaborazione degli errori di trading dipende molto dalle preferenze del trader.

Quindi, cari amici, è una cosa "fai da te".

Cosa c'entrano le sue preferenze? Chi conosce le capacità della configurazione del server meglio di te? Nessuno. Potete definire la risposta adeguata - quella tipica - e il trader la modificherà secondo il suo gusto e le sue conoscenze. I tempi nei protocolli di scambio e così via? Il trader fa trading o va in profondità nello studio degli errori? Il programmatore dovrebbe scrivere algoritmi o studiare gli errori? Il programmatore dovrebbe studiare le API per scrivere un emulatore (per un glitch) di auto-trading in caso di fallimento del server o dovrebbe scrivere algoritmi? Quanto tempo dedicare a questo invece che al trading?
 

Salve.

Ho deciso di scrivere il mio modulo di segnale puramente a scopo conoscitivo. Ho affrontato un problema. Ho capito che si può fare attraverso CExpertSignal::OpenLongParams(...). Ma ho un problema - il mio tester avverte di Invalid Expiration. Avendo scavato il codice sorgente, ho capito che non possiamo ottenere nessun tipo di tempo a parteORDER_TIME_SPECIFIED e vorremmo ORDER_TIME_GTC.

Finora ho fatto una mossa intelligente, ma non è del tutto giusta. Ho corretto la funzione nella libreria:

bool CExpertTrade::SetOrderExpiration(datetime order_expiration)
  {
   if(m_symbol==NULL) return(false);
//---

   if (order_expiration == 0)
   {
      m_order_type_time =ORDER_TIME_GTC;      
   }
   else
        if(!SetOrderTypeTime(ORDER_TIME_SPECIFIED)) return(false);
//---
   m_order_expiration=order_expiration;
//---
   return(true);
  }

Cosa può consigliare

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
Motivazione: