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

 
Vinin >> :

È meglio calcolare prima i valori della linea stocastica e del segnale. E poi confrontarli. Non mi piace questo stile. Il risultato è una sorta di cecità. Ed è più facile fare un errore.

If() nella variante metaquote fa il calcolo completo dell'espressione logica. Sarebbe auspicabile renderlo il più semplice possibile. È solo che if() è una delle operazioni più lente.

Esiste anche la nozione di "chattering" sulla barra dello zero. Ci possono essere casi in cui il segnale sarà ripetuto su una barra più di una volta. E può anche non bloccarsi. Era un falso segnale. Per questo motivo cerchiamo di prendere i valori dalle barre formate. Ma in questo caso dovremmo usare i prezzi di apertura. Anche se ci possono essere altre varianti.

Il "chattering" sulla barra zero è chiaro, ma è un altro problema.

Grazie per la "lentezza" dell'operazione if - è stato illuminante.

Quindi è meglio creare per esempio delle variabili

x=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowingF,PriceFieldF,0,shiftF);

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

e poi if(x>y) ecc. giusto?

"Non mi piace questo stile. È un po' cieco. Ed è anche più facile fare un errore".

Come lo scriveresti? Insegnami.

 
Salve a tutti. C'è una richiesta. Da qualche parte in rete ho visto qualcosa di simile, ma non l'ho più trovato. Ho bisogno di uno script che apra dei trade con la dimensione del lotto calcolata sul valore dello stoploss. Cioè uso variabili esterne per impostare la % del deposito o l'importo che sono pronto a rischiare e il valore di stop loss in pip. A seconda del valore del punto e dello stop loss lo script calcola il lotto e piazza un ordine. Se avete uno script simile, non esitate a postarlo. Voglio darvi un suggerimento su dove scaricarlo. Grazie in anticipo.
 
mukata писал(а) >>

Le "chiacchiere" alla barra zero sono comprensibili, ma questo è un altro problema...

Grazie per la "lentezza" dell'operazione if - è illuminante.

In altre parole, è meglio creare per esempio delle variabili

x=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowingF,PriceFieldF,0,shiftF);

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

e poi if(x>y) ecc. giusto?

"Non mi piace questo stile. È un po' cieco. Ed è più facile fare un errore".

Come lo scriveresti? Insegnami.

Il modo in cui di solito faccio il controllo degli incroci è questo. C'è un'intersezione, un'ulteriore elaborazione.

string _Symbol=Symbol(); // чтобы лишний раз не вызывать функцию

double Stoch0  = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 0,     0);
double Stoch1  = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 0, shiftF);
double Signal0 = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 1,     0);
double Signal1 = iStochastic(_Symbol, 0, KperiodF, D periodF, SlowlingF, methodF, PriceFieldF, 1, shiftF);


//пересекла ли главная линия стохастика сигнальную линию 
if (( Stoch0  - Signal0 )*( Stoch1  - Signal1) <0) {
   // Есть пересечение, дальше проверяем положение (как пересекла мы не знаем пока еще)

}
 
Vinin >> :

Di solito faccio il controllo dell'attraversamento in questo modo. C'è un'intersezione, un'ulteriore elaborazione.

  // Есть пересечение, дальше проверяем положение (как пересекла мы не знаем пока еще)
Mm-hmm, che efficienza!!!
Soprattutto nel mio tester...:-)
La maggior parte dei tick sono senza crossover, ma si scopre che stavo contando ogni tick: se un tale tick è meno di un altro, o un altro è meno di tale.....................
Grazie mille, mi sono messo al lavoro.
 
mukata писал(а) >>

Solo il mio progetto ha uno svantaggio. Se i valori coincidono su una delle barre calcolate, potrebbe esserci un salto di segnale. Anche se questo è improbabile, può succedere.

 
StatBars >> :

Grazie

 
rsi >> :

Questo è quello che dici: inviare un ordine durante il giorno con le condizioni 1 & 2, e di notte con le condizioni 1 & 2 & 3. Così hai la quarta condizione giorno-notte, ma l'hai mescolata con la terza. Si può, per esempio.

Grazie

 

Vorrei chiedere a qualche esperto, qual è il numero massimo di ordini funzionanti (e pendenti) possibile?

O non c'è questo limite?

 
xrym писал(а) >>

Vorrei chiedere a qualche esperto, qual è il numero massimo di ordini funzionanti (e pendenti) possibile?

Oppure non c'è questa limitazione.

Dovrebbe essere controllato con la vostra società di intermediazione. Puoi provare a mettere un ciclo infinito per vedere il massimo:

for(int k=1; k>2; k--)
{
   OrderSend(Symbol(),OP_BUY,0.1,Ask,1,0,0,"testing order");
   Alert("Текущее количество ордеров: ",OrdersTotal());
}
L'ultimo avviso sarà il numero massimo di ordini nel tuo DC.
 

A proposito, OrdersTotal() restituisce un numero di tipo int. E gli int possono prendere dei valori:

Внутреннее представление - длинное целое число размером 4 байта. Целые константы могут принимать значения от -2147483648 до 2147483647. Если константа превышает указанный диапазон, то результат не определен.

Cioè teoricamente il numero massimo di odori: 2147483647