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

 
alsu писал(а) >>
int start(){
   static int nevtime=0;
   if ( nevtime==Time[0]) return(0);
   nevtime=Time[0];

// Ваш код

   return(0);
}
In questo esempio, la prima partenza non partirà all'inizio della barra. Su tutte le partenze successive all'inizio di una nuova barra.
 

Ci risiamo, inserisco uno qualsiasi di questi codici e ottengo questo:

Non ci sono abbastanza scambi! E non si tratta dell'algoritmo, l'EA apre l'acquisto quando il segnale stocastico è sotto il livello inferiore, voglio salvare l'EA da falsi segnali di stocastico in eccesso, ma come?

double Ind11=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_MAIN,0);
double Ind12=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_SIGNAL,0);

double Ind13=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_MAIN,1);
double Ind14=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_SIGNAL,1);



if(Ind11<20 && Ind11>Ind12 && Ind13<Ind14)
{

OrderSend(Symbol(),OP_BUY,Lots,Ask,1,0,0,"",16384,0,Green);

}

 
Summer >>:

ну вот опять, ставлю любой из этих кодов и получаеться вот это:

сделок не хватает! И тут не дело в алгоритме, советник открывает бай когда стахостик сигналет ниже нижнего уровня,хочу избавить советник от ложных сигналов перерисовки стахостика, но как?

double Ind11=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_MAIN,0);
double Ind12=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_SIGNAL,0);

double Ind13=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_MAIN,1);
double Ind14=iStochastic(NULL,0,Kperiod,Dperiod,slowing,MODE_SMA,0,MODE_SIGNAL,1);



if(Ind11<20 && Ind11>Ind12 && Ind13<Ind14)
{

OrderSend(Symbol(),OP_BUY,Lots,Ask,1,0,0,"",16384,0,Green);

}

nello stocastico si prende 0 bar e quando si impostano i codici di cui sopra il programma verrà eseguito solo all'inizio della barra, l'incrocio può avvenire entro 0 bar

 

sanyooooook, um... allora come si risolve il problema del ridisegno senza ottenere questo difetto o come si cambia l'algoritmo di apertura degli scambi per farlo funzionare?

aggiunto:

Ho provato ad impostarlo per lavorare su barre chiuse, cioè invece di 0 metto 1 - invece di 1 metto 2, ma ancora non fa tutti i segnali, e non lo fa in questo caso.


File:
2.mq4  2 kb
 

Supponiamo che ci siano diversi conti di una società di intermediazione e, di conseguenza, ogni conto ha bisogno di un terminale separato.

Ma le citazioni in entrata sono le stesse per tutti e questo non fa che sovraccaricare il traffico.

C'è qualche programma o un modo per risparmiare sul traffico in entrata, per esempio, è possibile scrivere qualche strumento viruale che riceva il traffico in entrata dal server e lo distribuisca localmente tra i terminali? Naturalmente, il traffico in uscita non dovrebbe essere toccato - può essere diverso.

 
Come convertire da double a int, c'è un numero 0.0030, ottenuto calcolando i due livelli di prezzo, voglio usarlo nella traccia, ma non riesco a capire come ottenere 0.0030 in un intero 30, moltiplicando per 10000 esce un intero 30, convertito in questo modo int x = 0.0030 * 10000; ma la traccia non vede - x, forse c'è un altro modo?
 

Comunque, un paio di domande apparentemente sciocche...


1) Cosa viene mostrato sul grafico dei prezzi? Aprire o chiudere? O una media?


2) Come posso soddisfare la condizione di intersezione? La condizione di confronto di due valori porta all'apertura di più ordini, ma non vogliamo limitare l'apertura approssimativamente per tempo...


3) Quali funzioni di conversione di tipo ci sono, per esempio IntToStr IntToReal, come in Delphi per esempio, qui non ho trovato tale...

 

sanyooooook писал(а) >>

if (Volume[0]>1)return;
добавить код в начало int start()

funziona bene solo nel tester

 
alsu >>:

работает без сбоев только в тестере

Perché solo nel tester? Dovrebbe funzionare sia nella realtà che nella demo

 
sanyooooook >>:

почему только в тестере? работать должно и на реале и на дэмо

in un mercato reale veloce, il primo tick non è necessariamente 1

Motivazione: