[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 112

 
Roger >> :
C'è scritto "Attenzione" in russo, niente di più. Che tipo di problema è questo? Chiedete loro personalmente i dati della vostra società di intermediazione.
Se hai un MTS sensibile ai cambiamenti dei diversi broker, questo è davvero un problema.

>> Scusa, ma sto solo chiedendo se è possibile scaricare la cronologia delle quotazioni non dal server di Meta Quotes, ma dal server di un broker separato. Ti chiedo di tenere le tue ipotesi per te (senza offesa), perché MTS non è mio e ho intenzione di verificare se è sensibile ai cambiamenti delle società di brokeraggio.

 
Atis >> :
Come posso cogliere l'apparizione di una nuova barra in un EA?

Come questo:

int statico LastBars;

IBARS = iBars(Symbol(), Period());

se (LastBars != IBARS)
{

LastBars = IBARS;

.......

......

.......

}

 
ssd >> :

Come questo:

int statico LastBars;

IBARS = iBars(Symbol(), Period());

se (LastBars != IBARS)
{

LastBars = IBARS;

.......

......

.......

}

Sì, quindi non c'è nessun evento sulla comparsa di una nuova candela, ok, grazie mille.

 

Questo è tutto, è il momento di imparare a programmare, ora farò un sacco di domande nerd: )

ecco qui... uno.

Un semplice Expert Advisor, cosa ho fatto di male? * Sono stufo di questo errore, e non solo in questo script.


extern int Lots = 0.1;
extern int stoploss = 50;
extern int takeprofit = 50;
extern int iWPRperiod1 = 50;
extern int iWPRperiod2 = 60;
extern int magic = 555;

int start()
{

int stoploss, takeprofit, iWPRperiod1,iWPRperiod2, magic, lots;


if (iWPR(NULL,0,iWPRperiod1,0)>iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,lots,stoploss,takeprofit,0,magic,0,Red);
}
if (iWPR(NULL,0,iWPRperiod1,0)<iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,Lots,stoploss,takeprofit,0,magic,0,Red);
}
return(0);
}


 

Per prima cosa, controllate i sostegni: sono tutti sostegni di apertura. {...{ invece di {...} Il primo errore vi dice che le parentesi non sono posizionate correttamente nel programma.

Allora riceverai un messaggio che ti dice che ti manca il punto e virgola alla fine di una riga, e avrai anche un numero di riga.

E ci sarà molto di più di questo tipo di bontà perché segnalare gli errori è una buona azione, non ....... Traduci i messaggi di errore, quasi tutto è chiaro.

 

Ciao a tutti. Ecco una domanda:

Quale versione del codice richiede meno risorse di sistema (e tempo)?

Ho scritto un EA e sembra abbastanza complicato, imho. Ci vuole molto tempo per testarlo...

Sto pensando, forse accorciare i calcoli in qualche modo.

In questo caso, è più facile eseguire OrderType() o estrarre l'elemento dell'array mass[i,1]?

...

OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING(OrderType()); //вычисляет стоп-лосс
...

//или

...

OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING_BARS(mass[i,1]); //вычисляет стоп-лосс
...

Lo stesso di OrderStopLoss ecc.

O per esempio:

...

//пересекла ли главная линия стохастика сигнальную линию сверху вниз

if(

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)>

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)<

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))

...

//и ниже

...

//пересекла ли главная линия стохастика сигнальную линию cнизу вверх
if(

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)<
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)>
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))

...

ha senso creare variabili e assegnare loro valori di funzione e poi usarle, o no?

sarà di tipo

...

double a=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF);

double b=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF);

double c=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0);

double d=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0);

...

//пересекла ли главная линия стохастика сигнальную линию сверху вниз

if( a>b && c<d )

...

//пересекла ли главная линия стохастика сигнальную линию cнизу вверх

if( a<b && c>d )

...

È più costoso calcolare ogni volta uno stop, o creare una variabile, contare uno stop una volta e poi leggere il valore dalla variabile?

Per favore, consigliate, programmatori. Grazie

 

No, non ho intenzione di riparare i vostri codici in modo permanente. Avete la tecnologia per trovarlo.

L'unica cosa che dovrei notare è che non mi piace la notazione che usi. Con questa disposizione delle parentesi, IMHO, l'errore è più difficile da trovare. Guarda come scrive KimIV.

 
mukata писал(а) >>

Ciao a tutti. Ecco una domanda:

Quale versione del codice richiede meno risorse di sistema (e tempo)?

Ho scritto un EA e sembra abbastanza complicato, imho. Ci vuole molto tempo per testarlo.

Penso di poter ridurre in qualche modo i calcoli.

In questo caso, è più facile eseguire OrderType() o estrarre l'elemento dell'array mass[i,1]?

È più costoso contare ogni volta uno stop, o creare una variabile, contare uno stop una volta e poi leggere il valore dalla variabile?

Per favore, consigliate, programmatori. Grazie

Devi lavorare a 0 bar?

Stai cercando di abbreviare così tanto le cose che non posso fare a meno di pensare che non è questo il punto...

 
FOREXMASTER писал(а) >>
Dove hai nascosto il tuo codice? Stavo solo andando a modificarlo, ed è già...
 
StatBars >> :

Devi lavorare a 0 bar?

È solo che stai già cercando di abbreviare così tanto le cose che non puoi fare a meno di pensare che non si tratta di loro...

No, non sono un pifferaio, se è questo che intende...

e perché non dovrebbe funzionare...

È solo che la macchina è già caricata al limite, la CPU sta bollendo... E quando cominci a farlo funzionare, comincia a contare...

Non voglio riscriverlo per niente - ci sono molte cose del genere nei programmi...

e la domanda?