Errori, bug, domande - pagina 3123

 
x572intraday #:

A proposito di cercare un codice gratuito.

Provate a indovinare quale percentuale di programmatori cercano programmi per aiutare il loro trading redditizio o per imparare il codice. Personalmente, penso che la correlazione sarà a favore dei primi, dato che molti meno cercatori si vedono come programmatori in questo campo.

1. Sono sicuro che se qualcuno sta cercando qualcosa in kodobase, è puramente per l'applicazione nei propri sviluppi, cioè cerca il codice per il bene del codice. e la qualità e la leggibilità del codice è di grande importanza in questo caso. Personalmente, quando mi trovo di fronte a un nuovo compito più o meno complicato che non ho ancora risolto da solo, vado su codebase e se non c'è una soluzione sensata, la faccio io. Questo è più efficace, ma con la sottigliezza che prenderò solo codice quasi perfetto, o codice che può essere facilmente migliorato fino a quasi perfetto. Non prenderò mai uno spaghetto, anche se alla fine in qualche modo funziona.

2. Vitaly ti ha detto tutto correttamente sugli svantaggi del codice, mentre tu stai facendo scuse all'asilo. Volevi essere al centro dell'attenzione e mostrare la tua testardaggine)?

 
Aleksey Mavrin #:

1. Sono sicuro che se qualcuno sta cercando qualcosa in kodobase, è puramente per uso nel proprio sviluppo, cioè sta cercando codice per codice. e la qualità e la comprensibilità del codice è di grande importanza in questo caso. Personalmente, quando mi trovo di fronte a un nuovo compito più o meno complicato che non ho ancora risolto da solo, vado su codebase e se non c'è una soluzione sensata, la faccio io. Questo è più efficace, ma con la sottigliezza che prenderò solo codice quasi perfetto, o codice che può essere facilmente migliorato fino a quasi perfetto. Non prenderò mai uno spaghetto, anche se alla fine funziona in qualche modo.

2. Vitaly ti ha detto tutto correttamente sugli svantaggi del codice, mentre tu stai facendo scuse all'asilo. Volevi essere al centro dell'attenzione e mostrare la tua testardaggine)?

1. fiducia interessante. Cercherò di indovinare le sue origini. Probabilmente pensate che CodeBase contenga solo prodotti gratuiti, che a priori non possono essere completi per il trading redditizio, quindi gli utenti capiscono che (non i programmatori, ma quelli che hanno deciso di guadagnare soldi extra nel trading) rompono immediatamente il loro salvadanaio e vanno al Mercato per comprare prodotti a pagamento, presumibilmente pronti per fare profitto sullo scambio? Se questa è la sua opinione, non sono d'accordo. Basti pensare al motivo principale: tra gli altri, ci sono molti trader non ricchi e nemmeno liberi, che hanno risparmiato per il primo centesimo di deposito, ma non un programma del Mercato per almeno decine di dollari. E capiscono anche che più economico è un programma daMarket, meno utile è, molto probabilmente, e il codice sorgente potrebbe non essere affatto disponibile. - ti conviene andare su CodeBase e vedere se hai la fortuna di trovare qualcosa di relativamente utile... E se avete davvero bisogno di migliorarlo, ecco il codice grezzo - studiatelo e miglioratelo (cosa che non tutti faranno). Penso che il pregiudizio che il software libero sia peggiore di quello a pagamento sia il destino di coloro che non hanno scavato a fondo in CodeBase. È come dire che la parte server a pagamentodi Metatrader è più figa della parte client gratuita. Ovviamente la gratuità del cliente è finanziata dalla remunerazione del server - lo sviluppatore è lo stesso e può permetterselo. Ma se si allarga lo sguardo, il mondo del software in generale è pieno di analoghi gratuiti a pagamento con funzionalità e qualità molto buone. Allo stesso tempo, tornando all'ecosistema del software di trading, bisogna rendersi conto che nessuno metterà il graal del trading automatizzato nella sezione gratuita. Difficilmente sarà disponibile nel Market o in qualcos'altro per grandi cifre. Ma se non per inseguire il graal, ma per cercare un buon supporto almeno per il trading manuale, il software gratuito non è inferiore a molti ambiziosi sforzi a pagamento.

Di conseguenza, per tutto il percorso sei stato assolutamente chiaro sugli interessi dei programmatori rispetto a CodeBase, che, ripeto, non possono essere tanti quanto i sognatori di trovarci pronti e guadagnare qualche soldo, senza capire la struttura del codice. Se non siete d'accordo, dateci i vostri argomenti.

2. Vitaly aveva assolutamente ragione a sottolineare alcune carenze, ma alla fine ti dà un paio di F come revisione del codice. Non gli sarebbe permesso di avvicinarsi agli insegnanti di informatica. A differenza di lui, io cerco di essere più ragionevole e ragionato. Si ottiene una "F" per la totale ignoranza di un linguaggio, o per conoscerlo così male che il codice non è scritto, o è scritto, ma il poveretto non può compilarlo (o non lo interpreta) senza errori e alla fine non gira, o gira ma dà spazzatura. Si può ottenere "F" se nel senso di base il prodotto finale funziona come previsto, ma è glitchato e instabile, notevolmente lento, la funzionalità è molto modesta e non ci sono opzioni quando ne avete chiaramente bisogno (anche se si riferisce non al codice sorgente, ma al risultato del lavoro). B può essere dato con difetti minori: velocità insufficiente ottimizzata, scarsa leggibilità, codice non formattato e non documentato. Se il codice risultasse alienamente astruso o schizofrenicamente assurdo, ma il programma funzionasse perfettamente e stabilmente, non mi prenderei la briga di dargli un voto basso - forse una B almeno. Se si insegna a tutti secondo uno standard, senza individualità, è facile soffocare il talento.

La D di Vitalik è una chiara inflessione e non il mio caso; ha ragione nelle condizioni inadeguate del mio caso.

 
Aleksey Mavrin #:

1. Sono sicuro che se qualcuno sta cercando qualcosa in kodobase, è puramente per uso nel proprio sviluppo, cioè sta cercando codice per codice. e la qualità e la comprensibilità del codice è di grande importanza in questo caso. Personalmente, quando mi trovo di fronte a un nuovo compito più o meno complicato che non ho ancora risolto da solo, vado su codebase e se non c'è una soluzione sensata, la faccio io. Questo è più efficace, ma con la sottigliezza che prenderò solo codice quasi perfetto, o codice che può essere facilmente migliorato fino a quasi perfetto. I noodles, anche se alla fine funzionano in qualche modo, non li prenderò mai.

È per i programmatori come noi che propongo di introdurre un voto aggiuntivo per il codice sorgente sotto forma di una valutazione separata.Questo non è una discarica di software da un giorno o da cinque stelle (dove si vota per tutto il possibile rispetto al software già pronto, ma non per il codice sorgente), ma un sito serio per commercianti e programmatori, conosciuto non solo a Runet, ma in tutta Internet e ben oltre. Come cercare materie prime di qualità senza classificazione, eh?

О проекте MQL5.community
О проекте MQL5.community
  • www.mql5.com
MQL5.community - это описание языка программирования MetaQuotes Language 5, статьи по самой различной тематике, форум, программы автотрейдинга, написанные на MQL5 c их использованием в торговой платформе MetaTrader 5
 
x572intraday #:

Spostate le vostre lamentele sul fatto che il vostro codice sia valutato male nella discussione del vostro codice.

Non credo che tu possa farlo da solo, chiedi al tuo bugbear di farlo. Smettete di discutere della vostra creazione nel thread di utilità generale.

 
È molto spiacevole e sbagliato che non ci sia la possibilità di rivotare nel QB.

In primo luogo, ho avuto casi in cui, per sbaglio, ho cliccato sulla stella sbagliata.
In secondo luogo, il codice può essere raffinato e corretto.

 
Perché le criptovalute ora disponibili non sono sui server di MQ nel fine settimana? Non è un problema passare a un altro provider 24/7, ma perché MQ è peggio? Non sarebbe male...
 

Market Validator fa cadere questo

test su EURUSD,H1 (hedging) non sincronizzato con il server di trading rapporto del tester di strategia 462 trade totali

Costruire MT 5 3134

 

Si prega di aiutare con il tipo di costruzione DRAW_FILLING

Per qualche ragione una coppia di buffer funziona bene, ma la seconda si rifiuta di accettare il colore assegnato in modi diversi.


Anche provato a lasciare due buffer e rispettivamente una build e il risultato non cambia. Se con un'alta costruzione il colore di riempimento è normale, ma con un basso colore non lo è.

Ecco il codice

#property indicator_chart_window
//---
#property indicator_buffers 4
#property indicator_plots   2
#property indicator_type1   DRAW_FILLING
#property indicator_label1  "Line UP"
#property indicator_color1  clrDarkOrchid
#property indicator_type2   DRAW_FILLING
#property indicator_label2  "Line DN"
#property indicator_color2  clrMagenta

/****************indicator buffers****************/
double upLine[],
       upWidth[],
       dnLine[],
       dnWidth[];
/**************Custom indicator initialization function**************/
int OnInit()
 {
  SetIndexBuffer(0, upLine);
  SetIndexBuffer(1, upWidth, INDICATOR_CALCULATIONS);
  SetIndexBuffer(2, dnLine);
  SetIndexBuffer(3, dnWidth, INDICATOR_CALCULATIONS);
  //PlotIndexSetInteger(1, PLOT_SHOW_DATA, false);
  //PlotIndexSetDouble(1, PLOT_EMPTY_VALUE, -1.0);
  //PlotIndexSetInteger(2, PLOT_SHOW_DATA, false);
  //PlotIndexSetInteger(2, PLOT_LINE_COLOR, clrYellow);
  //PlotIndexSetDouble(2, PLOT_EMPTY_VALUE, -1.0);
  return(INIT_SUCCEEDED);
 }/******************************************************************/

/****************Custom indicator iteration function*****************/
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
 {
  int count = 0, limit = prev_calculated > 0 ? rates_total-1 : 0;
  if(prev_calculated == 0)
   {
    ArraySetAsSeries(time, true);
    ArraySetAsSeries(high, true);
    ArraySetAsSeries(low, true);
    ArraySetAsSeries(upLine, true);
    ArraySetAsSeries(upWidth, true);
    ArrayInitialize(upLine, 0.0);
    ArrayInitialize(upWidth, 0.0);
    ArraySetAsSeries(dnLine, true);
    ArraySetAsSeries(dnWidth, true);
    ArrayInitialize(dnLine, 0.0);
    ArrayInitialize(dnWidth, 0.0);
    for(int i = limit; i < rates_total; i++)
     {
      int arrMax = ArrayMaximum(high, i, 11); //  ищем максимум в 11-ти барах
      if(arrMax-i == 5)                       //  если максимум средний из 11-ти баров
       {
        for(int j = arrMax; j > fmax(arrMax-5, 0); j--)
        {
         upLine[j] = high[arrMax];
         upWidth[j] = high[arrMax]-_Point*2;
        }
       }
      int arrMin = ArrayMinimum(low, i, 11); //  ищем минимум в 11-ти барах
      if(arrMin-i == 5)                      //  если минимум средний из 11-ти баров
       {
        for(int j = arrMin; j > fmax(arrMin-5, 0); j--)
        {
         dnLine[j] = low[arrMin];
         dnWidth[j] = low[arrMin]+_Point*10;
  //PlotIndexSetInteger(3, PLOT_LINE_COLOR, clrYellow); // Это тоже не помогает…
        }
       }
     }
   }
//---
  Comment("\n"
         );
  return(rates_total);
 }/*******************************************************************/

Forse in qualche file .ini è bloccato quale impostazione? Forse cancellarlo, ma non so dove cercare questo file... Non so cosa pensare.

 
Gente, buon pomeriggio, perché quando si apre un conto demo per qualsiasi importo, il saldo è 0
 
Alexey Viktorov #:

Si prega di aiutare con il tipo di costruzione DRAW_FILLING

Per qualche ragione una coppia di buffer funziona bene, ma la seconda si rifiuta di accettare il colore assegnato in modi diversi.


Anche provato a lasciare due buffer e rispettivamente una build e il risultato non cambia. Se con un'alta costruzione il colore di riempimento è normale, ma con un basso colore non lo è.

Ecco il codice

Forse in qualche file .ini è bloccato quale impostazione? Forse cancellarlo, ma non so dove cercare questo file... non so cosa pensare.

DRAW_FILLING ha due buffer per il disegno