Pensi che il movimento su qualsiasi coppia di valute: grafico, prezzi bid e ask e così via, dipenda da un insieme di tue variabili?
Il movimento dei tassi non dipende dalle variabili, ma un trader cerca di trovare delle regolarità nel movimento, e su questa base seleziona le variabili (dati di input) per aprire, tenere e chiudere le posizioni. Dopo tutto, il sistema di trading è un insieme di regole destinate ad un lavoro redditizio. Forse, la distribuzione dei profitti e delle perdite è casuale, ma la loro proporzione è diversa e, quindi, si formano sistemi di trading redditizi. Deve essere così.
Евгений: Il movimento del tasso non dipende dalle variabili, ma il trader cerca di trovare modelli nel movimento, e su questa base sceglie le variabili (input) per aprire, mantenere e chiudere la posizione. Dopo tutto, il sistema di trading è un insieme di regole destinate ad un lavoro redditizio. Forse, la distribuzione dei profitti e delle perdite è casuale, ma la loro proporzione è diversa e, quindi, si formano sistemi di trading redditizi. Credo di sì.
In pratica, hai risposto alla tua stessa domanda. Cioè, sullo stesso movimento di prezzo si può ottenere quanto segue; profitto-perdita = CONST
L'esempio mostra come mettere un indicatore in una sottofinestra. Se non avete bisogno di una sottofinestra, basta usare l'esempio di muwig per mostrare come fare?
L'esempio mostra come mettere un indicatore in una sottofinestra. Se non avete bisogno di una sottofinestra, basta usare l'esempio di muwig per mostrare come fare?
Se volete aggiungere l'indicatore alla finestra principale, allora:
sottofinestra
[Numero di sottofinestra del grafico. 0 significa finestra principale del grafico. Per aggiungere un indicatore a una nuova finestra, il parametro deve essere uno in più dell'indice dell'ultima finestra esistente, cioè uguale aCHART_WINDOWS_TOTAL. Se il valore del parametro supera il valore diCHART_WINDOWS_TOTAL, una nuova finestra non sarà creata, l'indicatore non sarà aggiunto.
Se avete bisogno di aggiungere un indicatore alla finestra principale, allora:
//+------------------------------------------------------------------+//| 0000.mq5 |//| Copyright 2016, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2016, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"inputint MA_Period=21;
inputint MA_Shift=0;
inputENUM_MA_METHOD MA_Method=MODE_SMA;
int MA_handle=INVALID_HANDLE;
//+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ intOnInit()
{
MA_handle=iCustom(NULL,0,"Examples\\Custom Moving Average", MA_Period, MA_Shift, MA_Method, PRICE_CLOSE );
//--- попробуем добавить индикатор на график
AddIndicator();
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+ //| Функция проверки и добавления индикатора на график | //+------------------------------------------------------------------+ bool AddIndicator() { if(MA_handle==INVALID_HANDLE)
{ Print(__FUNCTION__," Создаем индикатор ");
MA_handle=iCustom(NULL,0,"Examples\\Custom Moving Average", MA_Period, MA_Shift, MA_Method, PRICE_CLOSE );
if(MA_handle==INVALID_HANDLE)
{
Print("Не удалось создать индикатор . Код ошибки ",GetLastError());
}
}
//--- сбросим код ошибки ResetLastError();
//--- накладываем индикатор на график Print("Mа построен ");
//--- получим номер нового подокна, в которое добавим индикатор int subwindow=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL);
PrintFormat("Добавляем индикатор на окно %d графика",subwindow);
if(!ChartIndicatorAdd(0,subwindow,MA_handle))
{
PrintFormat("Не удалось добавить индикатор на окно %d графика. Код ошибки %d",
subwindow,GetLastError());
}
return(true);
}
voidOnDeinit(constint reason)
{
MA_handle=iCustom(NULL,0,"Examples\\Custom Moving Average", MA_Period, MA_Shift, MA_Method, PRICE_CLOSE );
Ciao Vladimir.
Devo aver formulato male la mia domanda.
Non ho bisogno di una sottofinestra, l'indicatore dovrebbe essere posizionato sul grafico dei prezzi, come un grafico standard
Lo considero un esempio e cerco di capire.
Voglio che l'indicatore montato sul grafico abbia il suo numero, in modo che il numero necessario di copie possa essere creato sul grafico usando il pulsante "Add" ..... Voglio cancellarne uno selezionato dal pulsante "croce" ........ (non voglio ancora descriverli))
Controdomanda.
Pensi che il movimento su qualsiasi coppia di valute: grafico, prezzi bid e ask e così via, dipenda da un insieme di tue variabili?
Il movimento del tasso non dipende dalle variabili, ma il trader cerca di trovare modelli nel movimento, e su questa base sceglie le variabili (input) per aprire, mantenere e chiudere la posizione. Dopo tutto, il sistema di trading è un insieme di regole destinate ad un lavoro redditizio. Forse, la distribuzione dei profitti e delle perdite è casuale, ma la loro proporzione è diversa e, quindi, si formano sistemi di trading redditizi. Credo di sì.
Si prega di consigliare la funzione di limitare, in Expert Advisor voglio mettere un divieto di vendita o di acquisto da una media mobile.
Questo è un fastidio. Il riferimento all'array non viene passato alla funzione.
Con questo doppio *out[] - non importa come lo scrivi, si verificano tutti gli errori.
'BatIndicators.mqh' BatIndicators.mqh 1 1
'*' - il puntatore non può essere usato BatIndicators.mqh 18 45
'out' - gli array sono passati solo per riferimento BatIndicators.mqh 18 46
2 errore(i), 0 avviso(i) 3 1
o l'uno o l'altro o entrambi. Ricordo che prima non c'era nessun problema, o è in C. )
Questo è un fastidio. Il riferimento all'array non viene passato alla funzione.
Con questo doppio *out[] - non importa come lo scrivi, si verificano tutti gli errori.
'BatIndicators.mqh' BatIndicators.mqh 1 1
'*' - il puntatore non può essere usato BatIndicators.mqh 18 45
'out' - gli array sono passati solo per riferimento BatIndicators.mqh 18 46
2 errore(i), 0 avviso(i) 3 1
o l'uno o l'altro o entrambi. Ricordo che prima non c'era nessun problema, o è in C. )
Prova così
Prova questo
//--- ottenere il numero della nuova sottofinestra, in cui cercheremo di aggiungere l'indicatore
int subwindow=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL);
Questo è il codice che sto guardando https://www.mql5.com/ru/docs/chart_operations/chartindicatoradd
L'esempio mostra come mettere un indicatore in una sottofinestra. Se non avete bisogno di una sottofinestra, basta usare l'esempio di muwig per mostrare come fare?
//--- ottenere il numero di una nuova sottofinestra, in cui cercheremo di aggiungere un indicatore
int subwindow=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL);
Questo è il codice che sto guardando https://www.mql5.com/ru/docs/chart_operations/chartindicatoradd
L'esempio mostra come mettere un indicatore in una sottofinestra. Se non avete bisogno di una sottofinestra, basta usare l'esempio di muwig per mostrare come fare?
Se volete aggiungere l'indicatore alla finestra principale, allora:
sottofinestra
[Numero di sottofinestra del grafico. 0 significa finestra principale del grafico. Per aggiungere un indicatore a una nuova finestra, il parametro deve essere uno in più dell'indice dell'ultima finestra esistente, cioè uguale aCHART_WINDOWS_TOTAL. Se il valore del parametro supera il valore diCHART_WINDOWS_TOTAL, una nuova finestra non sarà creata, l'indicatore non sarà aggiunto.
Se avete bisogno di aggiungere un indicatore alla finestra principale, allora:
Ciao Vladimir.
Devo aver formulato male la mia domanda.
Non ho bisogno di una sottofinestra, l'indicatore dovrebbe essere posizionato sul grafico dei prezzi, come un grafico standard
Lo considero un esempio e cerco di capire.
Voglio che l'indicatore montato sul grafico abbia il suo numero, in modo che il numero necessario di copie possa essere creato sul grafico usando il pulsante "Add" ..... Voglio cancellarne uno selezionato dal pulsante "croce" ........ (non voglio ancora descriverli))