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

 

Un'altra domanda, non collegata alla precedente:

extern int    x1 = 20;
extern double y1 = 0;
extern double z1 = 0;

start() {

   z1 = . . . ;
   y1 = ( x1+100) / 100 * z1;

 . . . 
}


- A cosa dovrebbe essere uguale l'espressione [(x1+100) / 100] quando si calcola y1? (z1 non è più 0)

 
Prima devi controllare l'ordine di calcolo https://docs.mql4.com/ru/basis/operations/rules sembra 1,2*z1 Per quanto riguarda la domanda precedente, è più facile scrivere un EA da testare su un periodo di un giorno e che apra un ordine ad una certa ora. Cambiando i valori di stop e di profitto possiamo osservare il risultato. Ma considerando che non ci sono dati sulle zecche, la diffusione con il test sarà in ogni caso.
 
chief2000 писал(а) >>

Un'altra domanda, non collegata alla precedente:

- A cosa dovrebbe essere uguale l'espressione [(x1+100) / 100] quando si calcola y1? (z1 non è più 0)

Più correttamente sarebbe

extern int    x1 = 20;
double y1;
double z1;

start() {

   z1 = . . . ;
   y1 = ( x1+100.0) /100.0 * z1;

. . . 
}
 
splxgf >>:
для начала надо глянуть порядок вычислений https://docs.mql4.com/ru/basis/operations/rules похоже 1,2*z1 По предыдущему вопросу проще написать советник тестируемый на периоде в один день и который открывает один ордер в определенное время. Меняя стоп и профит смотреть на результат и вкуривать. Но учитывая что нет данных по тикам, то разброс с тестом будет в любом случае.

Buona idea quella dell'assessore!

 
Vinin >>:

Более правильно было бы так

A quanto pare sì! Ancora prima di ottenere la risposta, ho cambiato x1 da int a double e ho ottenuto anche l'1,2 desiderato - ma quanto ci ho messo a capire cosa stava succedendo! È come quella barzelletta: ho indovinato tutte le lettere, ma non sono riuscito a dire la parola :)

 
chief2000 >>:

Решил изменить свой Советник таким образом, чтобы его можно было оптимизировать по ценам открытия.

С открытиями нет проблем, но что делать с фиксированными Stop Loss и Take Profit? Я не совсем понимаю как это работает в этом режиме.

Допустим Бар открылся выше [Stop Loss = 30 пипс] и закрылся ниже Stop Loss. Будет ли убыток = 30 пипс или он будет рассчитан по

цене открытия следующего Бара (если откроется ниже СЛ)?

Также, есть ли какие-нибудь советы, рекомендации по этой теме?

Спасибо!





la perdita sarà esattamente di 30 pip, ma c'è una domanda più complicata: se una nuova barra ha catturato sia lo stoploss che il takeprofit, cosa eseguirà il tester? Ovviamente, dovrebbe fare quello che è successo prima, ma come farà a saperlo se funziona solo con i prezzi di apertura? Ecco perché si dice che questo metodo di test è molto impreciso, a meno che l'EA apra e chiuda le posizioni solo nel momento in cui vengono aperte nuove barre - e senza stoploss, mi dispiace.

 
alsu >>:

убыток будет ровно 30 пипс, но есть вопрос и посложнее: если новый бар зацепил и стоплосс и тейкпрофит, что будет исполнять тестер? Очевидно, должен то, что произошло раньше, но откуда он об этом узнает, если работает только по ценам открытия??? Вот по-этому и говорится, что данный метод тестирования очень неточный, если только в советнике как открытие, так и закрытие позиций не происходит только в моменты открытия новых баров - и никаких стоплоссов, уж извиняйте.

- Questo va bene (esattamente 30 pips).

- Se una barra si sovrappone sia allo SL che al TP - sembra che in questo caso MT sceglierà l'opzione più pessimistica e proteggerà il trade

come non redditizio (meglio ricontrollare). A quanto pare questo (nel mio caso specifico non ha ancora visto) un evento raro -

può essere trovato quando si testa su tutti i tick (dopo aver ottimizzato sui prezzi di apertura).

- Se chiudiamo gli scambi in base alla chiusura delle barre - come possiamo calcolare il numero di lotti per aprire una posizione?

 
Come faccio a far sì che il MACD (fx5_div) cambi il colore della barra a seconda che sia uguale alla barra precedente, più grande o più piccola?
 
fare tre buffer (colori diversi) e inserirvi i valori corrispondenti...
 

Comment("Sample text" );


Ciao a tutti, ecco il commento visualizzato dall'EA. Poi si disconnette l'EA dal grafico, ma il commento rimane. Capisco che dobbiamo rendere il commento un oggetto e poi prescrivere la cancellazione di questo oggetto in deinit. Teoricamente è chiaro, ma in pratica non tanto. Professionisti, potete darmi un modello di codice su come fare questo, per favore?