Errori, bug, domande - pagina 2013

 
fxsaber:

Ho preso subito in considerazione questa caratteristica. Ora ho ricontrollato io stesso.

Versione di rilascio:

Sì, in effetti, c'è una differenza nel portare il codice a 32 bit e a 64 bit allo stesso comportamento.
 
fxsaber:
Sarebbe davvero comodo avere almeno una lista del genere.

Forse è meglio non da MarketWatch ma dalla lista dei grafici aperti. Dopo tutto, c'è una tale lista; è aperta nel tester.

Anche se, se un Expert Advisor apre un grafico, ha bisogno della lista MarketWatch.

In ogni caso, lo sostengo.

 
fxsaber:
In effetti, sarebbe conveniente avere almeno questo

Sul lavoro con i simboli, un suggerimento:

Finché l'algoritmo per lavorare con le stringhe di tipo è costoso - implementa almeno la capacità di lavorare con l'indice numerico del simbolo del broker.

int OrderSymbolIndex()//dal server direttamente

int SymbolIndex((string)symbol_name)//siccome è sincronizzato con l'indice del broker nel terminale, viene eseguito localmente


I benefici sono evidenti a livello di stoccaggio (può essere in strutture semplici, array), di elaborazione (processore e memoria) e di trasferimento

 
Kirill Belousov:

Sul lavoro con i simboli, un suggerimento:

Finché l'algoritmo per lavorare con le stringhe di tipo è costoso - implementa almeno la capacità di lavorare con l'indice numerico del simbolo del broker.

int OrderSymbolIndex()//dal server direttamente

int SymbolIndex((string)symbol_name)//siccome è sincronizzato con l'indice del broker nel terminale, viene eseguito localmente


I vantaggi sono evidenti a livello di stoccaggio (in strutture semplici, array), di elaborazione (processore e memoria) e di trasmissione

C'è molto da suggerire, ma probabilmente vale la pena di immaginarsi un po' nei panni degli sviluppatori. Lavorare con le stringhe è probabile che acceleri.

 

Come posso allegare la funzionalità di frame al Market Advisor di qualcun altro per essere in grado di ottenere la stessa storia di trading di backtest?

Al momento devo usare WinAPI per fare questo. È una spina nel fianco.

 
prostotrader:

Perché è così?

Codice

Probabilmente intendevaDoubleToString(xxx, 2). Quando il secondo parametro è omesso, il valore predefinito è 8.

 
Stanislav Korotky:

Probabilmente intendeva DoubleToString(xxx, 2). Quando il secondo parametro è omesso, il valore predefinito è 8.


Ho capito, quindi ho rimosso il messaggio

 

MT4 build 1090

Durante la compilazione di .mqh, il compilatore interpreta male lo scopo delle variabili, limitato dalle parentesi graffe

Per, mentre, se ecc.

se una variabile è dichiarata localmente, si lamenterà della ridichiarazione

void test1()
  {
   int total=1;
   for(int i=0;i<total;i++)
     {
      int a=0;
     }
   for(int i=0;i<total;i++)//в mqh 'i' - variable already defined
     {
      int a=0;//в mqh 'a' - variable already defined
     }
   Print(a);//в mqh компилятор здесь молчит
  }

se si ri-dichiara lo stesso codice, allora è corretto.


è un bug noto o devo creare un'applicazione in sd?

 
Kirill Belousov:

MT4 build 1090

Durante la compilazione di .mqh, il compilatore interpreta male lo scopo delle variabili, limitato dalle parentesi graffe

Per, mentre, se ecc.

se una variabile è dichiarata localmente, si lamenterà della ridichiarazione

se si ri-dichiara lo stesso codice, allora è corretto.

È un bug noto o devo creare un biglietto per il CA?


È troppo presto per il servicedesk - potresti fare un errore di programmazione. Ma prima il codice, un esempio di come usarlo e una descrizione dettagliata del bug.

 
Kirill Belousov:

MT4 build 1090

quando si compila il .mqh, il compilatore non interpreta correttamente gli ambiti delle variabili delimitati da parentesi graffe

#property strict