Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 579

 
Zolotai:

Ragazzi, per favore, ditemi. C'è un modo per usare uno script o un tacchino.

Alzare il grafico. In altre parole, la dimensione della finestra dovrebbe rimanere la stessa. Basta alzare le citazioni in modo che siano compresse da quel livello. Cioè, da quella distanza o, diciamo, intervallo che sarà impostato.

Ma non dal fondo della classifica...

Non ho controllato personalmente, ma l'aiuto ha https://docs.mql4.com/ru/constants/chartconstants/charts_samples

Più vicino al centro della pagina.

//+------------------------------------------------------------------+
//| Функция устанавливает значение высоты графика в пикселях.        |
//+------------------------------------------------------------------+
bool ChartHeightInPixelsSet(const int value,const long chart_ID=0,const int sub_window=0)
  {
//--- сбросим значение ошибки
   ResetLastError();
//--- установим значение свойства
   if(!ChartSetInteger(chart_ID,CHART_HEIGHT_IN_PIXELS,sub_window,value))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
      return(false);
     }
//--- успешное выполнение
   return(true);
  }
 

Sto lavorando al codice di Expert Advisor, ma ho un problema con il calcolo dei lotti.

Tutto sembra essere corretto, funziona bene nel tester, ma quando lo metto sul conto demo, apre 2 lotti, e poi genera un errore che non ci sono abbastanza soldi, e questo è tutto. Ho provato tante soluzioni diverse, ma non sono riuscito a risolvere il problema. Ho cercato di usare il mio robot forex ma non so come usarlo.

Ho cercato di sostituire la formula orginale

a

double lots = (AccountBalance()*0.0025*Bid);

Ma non ha funzionato.

File:
lklhykvty2.ex4  18 kb
 
366366:

Sto lavorando al codice di Expert Advisor, ma ho un problema con il calcolo dei lotti.

Tutto sembra essere corretto, funziona bene nel tester, ma quando lo metto sul conto demo, apre 2 lotti, e poi genera un errore che non ci sono abbastanza soldi, e questo è tutto. Ho provato tante soluzioni diverse, ma non sono riuscito a risolvere il problema. Ho cercato di usare il mio robot forex ma non so come usarlo.

Ho cercato di sostituire la formula orginale

a

double lots = (AccountBalance()*0.0025*Bid);

Ma non ha funzionato.

Dare un file con estensione mq4 non ex4.
 
paladin80:
Dare l'estensione del file mq4 invece di ex4.


scuse
File:
 
AlexeyVik:
Non ho controllato personalmente, ma il riferimento è https://docs.mql4.com/ru/constants/chartconstants/charts_samples.

Più vicino al centro della pagina.



Puoi essere più specifico, per favore? Devo metterlo nell'indicatore o nello script?

Non sono bravo a programmare. Devo digitare questa funzione e chiamarla ogni volta?

Ecco un'altra domanda. Cosa devo passare a questa funzione?

 
366366:

извияюсь
double lots = (AccountBalance()*0.0025*Bid);
 

un consiglio,

L'Expert Advisor utilizza diversi TF esplicitamente prescritti.

Una TF non è presente nell'archivio delle citazioni (H1),

Lo provo su 1 minuto a prezzi aperti

il tester converte il TF mancante da solo?

perché i risultati sembrano essere gli stessi per tutti i TF nella storia delle citazioni

dove posso leggere qualcosa al riguardo

 

Aiuta a capire.

All'apertura degli ordini, TakeProfit =90, StopLoss =30. Gli ordini vengono chiusi solo dai livelli TakeProfit o StopLoss. Il loro valore differisce di un fattore 3, e nel rapporto Strategy Tester quando si testa l'Expert Advisor, la più grande operazione redditizia = la media delle operazioni redditizie = la più grande operazione perdente = la media delle operazioni perdenti. Solo quando aumento il rapporto TakeProfit e StopLoss la situazione cambia. Non riesco a capire perché sia così. Aiutami a capire.

 
Roger:
double lots = (AccountBalance()*0.0025*Bid);


Questa è la formula per calcolare il lotto per la coppia EURUSD con una leva di 1:500.

La formula originale era diversa, ma anche per la leva 1:500.

L'ho cambiato con il mio: double lots = (AccountBalance()*0.0025*Bid);

Il problema è rimasto, apre anche 2 lotti.

 
hoz:

Non capisco bene il motivo della domanda. Per quanto riguarda l'algoritmo, è una vostra scelta. Per quanto riguarda il codice, non c'è niente di complicato. Le candele hanno prezzi alti, bassi, aperti e chiusi. E quando questi dati sono disponibili, è possibile ottenere qualsiasi altro dato di mercato, compresi i livelli Fibo, se necessario.

Non ho familiarità con Fibonacci, ma grazie per il suggerimento sulla direzione in cui muoversi, ho cercato i massimi e i minimi per molto tempo.
Motivazione: