Ci sono troppi "esperti" qui :) Così ho deciso di prenderli in giro. Invece di rispondere alle domande, inizia a dare lezioni.
Allora non aspettatevi risposte normali da persone che sono occupate a fare le loro cose e sono distratte dall'aiutarvi, se vi mettete nella posizione di prendere in giro chi dà.
Allora non aspettatevi in futuro da persone che sono occupate con i loro affari, e distratte per aiutarvi, risposte normali, se vi mettete nella posizione di prendere in giro chi dà.
Questo non è un circo.
Caro moderatore, se questo non è un circo, potresti gentilmente portare i clown che hanno risposto alle mie domande dietro le quinte? Grazie.
Salve. Ho scaricato il file di quotazione EUR USD 1 minuto da Ducascopy, cercando di importare in MT4 Alpari, non succede nulla. Solo una finestra di conversione vuota. Lo stesso su Instaforex. Cosa può essere?
Ora il compito è il seguente. Abbiamo bisogno di disegnare un rettangolo al posto di una freccia, che sarà tracciato da max e min Doji e dal tempo di apertura di Doji e il tempo di apertura di una nuova barra dopo Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Ho trovato un difetto nella logica. L'ho aggiustato e funziona.
L'errore era nella descrizione matematica del modello Doji.
Buon per te. Ha mai programmato prima? Il tuo stile non è tipico.
voron_026:
Ora il compito è il seguente. Invece delle frecce, dobbiamo disegnare un rettangolo, che sarà disegnato dal Doji massimo e minimo e dal tempo di apertura del Doji e il tempo di apertura di una nuova barra dopo il Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Grazie.
Fare la dichiarazione delle variabili comuni (globali) che saranno calcolate nella funzione e ritornare da essa void(){} . Puoi definire il tempo... Comunque, non ho ancora capito la domanda esatta.
A proposito, non conoscevo l'approccio della variabile globale prima e stavo restituendo tutti i valori dalla funzione tramite la variabile stringa...
Ora il compito è il seguente. Abbiamo bisogno di disegnare un rettangolo al posto di una freccia, che sarà tracciato da max e min Doji e dal tempo di apertura di Doji e il tempo di apertura di una nuova barra dopo Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Grazie.
Devi usare OBJ_RECTANGLE. Sai come ottenere i dati di prezzo e tempo dal grafico H4.
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_RECTANGLE - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Buon per te. Ha mai programmato prima? Il tuo stile non è tipico.
Dichiarare le variabili generali (globali) da calcolare nella funzione e ritornare da essa void(){} . Puoi determinare il tempo... Comunque, non capisco quale sia esattamente la domanda.
A proposito, non sapevo dell'approccio della variabile globale prima e restituivo tutti i valori dalla funzione attraverso la variabile stringa...
CiaoAleksey Vyazmikin sto programmando non molto tempo fa. Mi sto lentamente addentrando nell'argomento.
Ho provato in questo modo:
//+------------------------------------------------------------------+//| 111.mq4 |//| Copyright 2017,UriyGlushko |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2017,UriyGlushko"#property link"https://www.mql5.com"#property version"1.00"#property strictexternstring Rodot = "Параметры робота";
externdouble Lots = 0.2;
externint StopLoss = 20;
externint TakeProfit = 80;
externint Magic = 999999;
externint Slippage = 3; // Проскальзываниеexternbool UseDojiCandles = true; // Использование патерна Доджиint DojiCandle = 0;
bool New_Bar = false;
datetime time0 = iTime(Symbol(),PERIOD_H4,0);
datetime time1 = iTime(Symbol(),PERIOD_H4,1);
double open0 = iOpen(Symbol(), PERIOD_H4,0);
double open1 = iOpen(Symbol(), PERIOD_H4,1);
double close1 = iClose(Symbol(), PERIOD_H4,1);
double high1 = iHigh(Symbol(), PERIOD_H4,1);
double low1 = iLow(Symbol(), PERIOD_H4,1);
//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
if (Digits == 3 || Digits ==5 )
{
TakeProfit *= 10;
StopLoss *= 10;
Slippage *= 10;
}
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
Fun_New_Bar();
if(UseDojiCandles = true && Doji() == 1 && New_Bar == true)
{
if(!ObjectCreate(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJ_RECTANGLE,0,time1,open1,time0,open0))
{
Print("Не удалось создать метку вверх");
}
ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_COLOR,clrRed);//--- установим цвет прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_STYLE,STYLE_SOLID);//--- установим стиль линий прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_WIDTH,1);//--- установим толщину линий прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_BACK,false);//--- отобразим на переднем (false) или заднем (true) плане
DojiCandle ++;
}
if(UseDojiCandles = true && Doji() == -1 && New_Bar == true)
{
if(!ObjectCreate(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJ_RECTANGLE,0,time1,open1,time0,open0))
{
Print("Не удалось создать метку вниз");
}
ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_COLOR,clrRed);//--- установим цвет прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_STYLE,STYLE_SOLID);//--- установим стиль линий прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_WIDTH,1);//--- установим толщину линий прямоугольника ObjectSetInteger(ChartID(),"Doji_"+IntegerToString(DojiCandle),OBJPROP_BACK,false);//--- отобразим на переднем (false) или заднем (true) плане
DojiCandle ++;
}
}
//+------------------------------------------------------------------+// Поиск всех объектов//+------------------------------------------------------------------+//+------------------------------------------------------------------+// Функция паттерна Доджи//+------------------------------------------------------------------+int Doji()
{
//Параметры Дожиdouble Open1 = NormalizeDouble (iOpen(Symbol(), PERIOD_H4,1),Digits);
double Close1 = NormalizeDouble (iClose(Symbol(), PERIOD_H4,1),Digits);
double High1 = NormalizeDouble (iHigh(Symbol(), PERIOD_H4,1),Digits);
double Low1 = NormalizeDouble (iLow(Symbol(), PERIOD_H4,1),Digits);
//Параметры предыдущей свечиdouble Open2 = NormalizeDouble (iOpen(Symbol(), PERIOD_H4,2),Digits);
double Close2 = NormalizeDouble (iClose(Symbol(), PERIOD_H4,2),Digits);
double High2 = NormalizeDouble (iHigh(Symbol(), PERIOD_H4,2),Digits);
double Low2 = NormalizeDouble (iLow(Symbol(), PERIOD_H4,2),Digits);
//Параметры индикатора волотильности ATR для нахожденя относительно большой свечи перед Доджиdouble ATR = iATR(Symbol(),PERIOD_H4,21,1);
//Математическое описание патерна Дожиif(Close1 < High1 -0.3*(High1-Low1) &&
Open1 < High1 -0.3*(High1-Low1) &&
Close1 > High1 -0.7*(High1-Low1) &&
Open1 > High1 -0.7*(High1-Low1) &&
MathAbs(Close1-Open1) < 0.2*(High1-Low1)&&
MathAbs(Close2-Open2) > 0.7*ATR)
{
if((Close2 - Open2) > 0 && New_Bar == true)
{
Print ("Down"); return(-1);// Условие для продаж
}
if((Close2 - Open2) < 0 && New_Bar == true)
{
Print ("Up"); return(1);// Условие для покупок
}
}
return(0);
}
//+------------------------------------------------------------------+// Функция определения нового бара//+------------------------------------------------------------------+void Fun_New_Bar() // Ф-ия обнаружения нового бара
{
datetime TimeBar0 = iTime(Symbol(),PERIOD_H4,0);
staticdatetime New_Time=0; // Время текущего бара
New_Bar=false; // Нового бара нет if(New_Time != TimeBar0) // Сравниваем время
{
New_Time = TimeBar0; // Теперь время такое
New_Bar = true; // Поймался новый бар
}
}
Il primo rettangolo viene disegnato, gli altri non vengono disegnati. Sto ancora cercando di capire come farlo. Grazie per i consigli e cosa intendi per uno stile non tipico?
Infatti non tutte le tastiere hanno quello di cui ho scritto... Forse dovresti cambiare la tua tastiera.
Ci sono troppi "esperti" qui :) Così ho pensato di prenderti in giro. Invece di rispondere alle domande, iniziano a dare lezioni.
Ci sono troppi "esperti" qui :) Così ho deciso di prenderli in giro. Invece di rispondere alle domande, inizia a dare lezioni.
Allora non aspettatevi risposte normali da persone che sono occupate a fare le loro cose e sono distratte dall'aiutarvi, se vi mettete nella posizione di prendere in giro chi dà.
Questo non è un circo.
Allora non aspettatevi in futuro da persone che sono occupate con i loro affari, e distratte per aiutarvi, risposte normali, se vi mettete nella posizione di prendere in giro chi dà.
Questo non è un circo.
Caro moderatore, se questo non è un circo, potresti gentilmente portare i clown che hanno risposto alle mie domande dietro le quinte? Grazie.
Caro moderatore, se questo non è un circo, saresti così gentile da portare i clown che hanno risposto alle mie domande dietro le quinte? Grazie.
È questo il modo di mandarti dietro le quinte?
Tu:
Forum sul trading, sistemi di trading automatico e test di strategia
Tutte le domande dei principianti su MQL4, aiuto e discussione su algoritmi e codici
Luchezar Shalomaev, 2017.09.20 22:25
Salve. Ho scaricato il file di quotazione EUR USD 1 minuto da Ducascopy, cercando di importare in MT4 Alpari, non succede nulla. Solo una finestra di conversione vuota. Lo stesso su Instaforex. Cosa può essere?
Risposta:
Forum sul trading, sistemi di trading automatico e test di strategia
Tutte le domande dei principianti su MQL4, aiuto e discussione su algoritmi e codici
Vitaly Muzichenko, 2017.09.20 22:32
Hai intenzione di fare trading in Dukascopy? No? Allora perché avete bisogno dei loro preventivi?
Tu:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei neofiti su MQL4, aiuto e discussione su algoritmi e codici
Luchezar Shalomaev, 2017.09.20 22:42
Ho bisogno di quotazioni Alpari ma non sono riuscito a trovarne nessuna da loro.
Risposta:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei neofiti su MQL4, aiuto e discussione su algoritmi e codici
Vitaly Muzichenko, 2017.09.20 22:45
Hanno abbastanza storia per testare gli EA
Tu:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei neofiti su MQL4, aiuto e discussione su algoritmi e codici
Luchezar Shalomaev, 2017.09.20 22:46
Mi dispiace, ma per il mio compito ho bisogno di più di quello che danno.
Risposta:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Qualsiasi domanda per i neofiti su MQL4, aiuto e discussione su algoritmi e codici
Alexey Viktorov, 2017.09.21 07:47
Premere F2
Tu:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Qualsiasi domanda per i neofiti su MQL4, aiuto e discussione su algoritmi e codici
Luchezar Shalomaev, 2017.09.21 09:06
Grazie. Premendo F e 2. Non succede niente.Tu:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei principianti su MQL4, aiuto e discussione su algoritmi e codici
Alekseu Fedotov, 2017.09.21 09:29
F2Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei principianti su MQL4, aiuto e discussione su algoritmi e codici
Alexey Viktorov, 2017.09.21 09:34
Davvero non tutte le tastiere hanno quello di cui ho scritto... Forse la tastiera dovrebbe essere cambiata?
Tu:
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Qualsiasi domanda, assistenza e discussione su algoritmi e codici per i principianti di MQL4
Luchezar Shalomaev, 2017.09.21 21:08
Sterling
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Tutte le domande dei neofiti su MQL4, aiuto e discussione su algoritmi e codici
Luchezar Shalomaev, 2017.09.21 21:10
Ci sono troppi "esperti" qui :) Così ha deciso di prenderli in giro. Invece di rispondere alle vostre domande, iniziano a predicare.
La tua domanda ha avuto una risposta - premi F2, che fa apparire la finestra di download della citazione.
Ma tu hai iniziato a scherzare e hai avuto le battute in risposta.
Cosa volevi? Quello con cui sei venuto, come si dice...
Quindi dovrei mandarti nel backstage?
Tu:
Risposta:
Tu:
Risposta:
Tu:
Risposta:
Tu:
Tu:
Tu:
Ti è stata data una risposta alla tua domanda - premi F2, che fa apparire la finestra di download del preventivo.
Ma lei ha iniziato a scherzare, al che ha ricevuto una battuta in risposta.
Che cosa vuoi? Quello con cui sei venuto, come si dice...
Beh, voi dite che non è un circo.
Il modo più semplice per scrivere la logica è renderla più chiara - non capisco quale sia la logica... può descriverlo a parole?
Ho trovato un difetto nella logica. L'ho aggiustato e funziona.
L'errore era nella descrizione matematica del modello Doji.Ora il compito è il seguente. Abbiamo bisogno di disegnare un rettangolo al posto di una freccia, che sarà tracciato da max e min Doji e dal tempo di apertura di Doji e il tempo di apertura di una nuova barra dopo Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Non so come fare, grazie.
Ho trovato un difetto nella logica. L'ho aggiustato e funziona.
L'errore era nella descrizione matematica del modello Doji.Buon per te. Ha mai programmato prima? Il tuo stile non è tipico.
Ora il compito è il seguente. Invece delle frecce, dobbiamo disegnare un rettangolo, che sarà disegnato dal Doji massimo e minimo e dal tempo di apertura del Doji e il tempo di apertura di una nuova barra dopo il Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Grazie.
Fare la dichiarazione delle variabili comuni (globali) che saranno calcolate nella funzione e ritornare da essa void(){} . Puoi definire il tempo... Comunque, non ho ancora capito la domanda esatta.
A proposito, non conoscevo l'approccio della variabile globale prima e stavo restituendo tutti i valori dalla funzione tramite la variabile stringa...
Ora il compito è il seguente. Abbiamo bisogno di disegnare un rettangolo al posto di una freccia, che sarà tracciato da max e min Doji e dal tempo di apertura di Doji e il tempo di apertura di una nuova barra dopo Doji. E tutto questo su un grafico a 4 ore. Allo stesso tempo ho bisogno di essere su un grafico a 5 minuti. Cosa può consigliare? Come implementare?
Grazie.
Devi usare OBJ_RECTANGLE. Sai come ottenere i dati di prezzo e tempo dal grafico H4.
Buon per te. Ha mai programmato prima? Il tuo stile non è tipico.
Dichiarare le variabili generali (globali) da calcolare nella funzione e ritornare da essa void(){} . Puoi determinare il tempo... Comunque, non capisco quale sia esattamente la domanda.
A proposito, non sapevo dell'approccio della variabile globale prima e restituivo tutti i valori dalla funzione attraverso la variabile stringa...
CiaoAleksey Vyazmikin sto programmando non molto tempo fa. Mi sto lentamente addentrando nell'argomento.
Ho provato in questo modo:
Il primo rettangolo viene disegnato, gli altri non vengono disegnati. Sto ancora cercando di capire come farlo. Grazie per i consigli e cosa intendi per uno stile non tipico?