La fenêtre MetaTrader 5 affiche les valeurs Bid& Ask, qui (d'après ce que je comprends) déterminent le gain/la perte.
Cependant, lorsque j'essaie d'utiliser les cotations minute de l'historique pour tester ma stratégie, ces cotations ne contiennent pas les valeurs Bid etAsk, mais donnent les valeurs " OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL","VOL","SPREAD". Il n'est pas très clair comment prendre l'offre et lademande à partir de ces valeurs, ainsi que la façon de calculer le spread.
Tout est absolument clair. Décrivez plus en détail ce que signifie exactement "lorsque j'essaie d'utiliser les guillemets de l'historique des minutes" ? Que faites-vous ou voulez-vous faire exactement ?
longSymbolInfoInteger(
string name, // символ ENUM_SYMBOL_INFO_INTEGER prop_id // идентификатор свойства
);
2. Renvoie vrai ou faux selon le succès de la fonction. En cas de succès, la valeur de la propriété est placée dans la variable de destination passée par référence par le dernier paramètre.
boolSymbolInfoInteger(
string name, // символ ENUM_SYMBOL_INFO_INTEGER prop_id, // идентификатор свойства long& long_var // сюда примем значение свойства
);
2. Renvoie vrai ou faux en fonction du succès de la fonction. En cas de succès, la valeur de la propriété est placée dans la variable de destination passée par référence par le dernier paramètre.
#property copyright"Copyright 2018, Sergey S Morozov"#property link"https://www.mql5.com"#property version"1.00"#property strict//#property indicator_separate_window // Индик. рисуется в новом окне#property indicator_chart_window// Индик. рисуется в основном окне#property indicator_buffers1// Количество буферов#property indicator_color1 Red // Цвет первой линииexternint History =50; // Колич.баров в расчётной историиexternint Aver_Bars=5; // Количество баров для расчётаdouble ArrayBuff[];
//----------------------------------------------------------------------------------------------------intOnInit()
{
SetIndexBuffer(0,ArrayBuff);
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,1);
return(INIT_SUCCEEDED);
}
intOnCalculate(
constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
int i, // Индекс бара
n, // Формальный параметр
Counted_bars; // Количество просчитанных баров double
Sum_H, // Сумма значений High за переиод
Sum_L; // Сумма значений Low за переиод//--------------------------------------------------------------------
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанногоif (i>History-1) // Если много баров то ..
i=History-1; // ..рассчитывать заданное колич.while(i>=0) // Цикл по непосчитанным барам
{
Sum_H=0; // Обнуление в начале цикла
Sum_L=0; // Обнуление в начале циклаfor(n=i;n<=i+Aver_Bars-1;n++) // Цикл суммирования значений
{
Sum_H=Sum_H + High[n]; // Накопление суммы макс.значений
Sum_L=Sum_L + Low[n]; // Накопление суммы мин. значений
}
ArrayBuff[i]=(Sum_H-Sum_L)/Aver_Bars; // Знач. 0 буфера на i-ом баре
i--; // Расчёт индекса следующего бара
}
return(rates_total);
}
//+------------------------------------------------------------------+
Je viens de commencer, je ne sais pas encore comment écrire dans cette langue. Mais le problème est le suivant : si dans une nouvelle fenêtre, le graphique apparaît. Mais je ne peux pas l'afficher dans l'actuel... Quelle est mon erreur ? Considérant que je n'ai pas pu moi-même l'écrire et que je ne trouve pas d'exemples ici. De plus, il est clair que ce n'est pas par le biais d'une fonction comme SetChartData(point1,point2) ; cela se produit tout seul...
Et la variable semble être définie(indicator_chart_window), mais cela ne fonctionne toujours pas.....
Задавайте вопросы по техническому анализу, обсуждайте торговые системы и улучшайте свои навыки программирования торговых стратегий на языке MQL5. Общайтесь и обменивайтесь опытом на форуме с трейдерами всего мира и помогайте ответами новичкам — наше сообщество развивается вместе с вами. Как прописать расписание торговли робота? Здравствуйте...
Absolument tout est disponible. Décrivez plus en détail ce que signifie exactement "lorsque j'essaie d'utiliser les guillemets de l'historique des minutes" ? Que faites-vous ou voulez-vous faire exactement ?
Pour télécharger l'historique des cours, chargez MetaTrader 5, cliquez sur l'icône avec le symbole du dollar: "Symbol List Display" (ou vous pouvez appuyer sur CtrlU). La fenêtre "Symboles" apparaît. Dans l'onglet "SPECIFICATION", trouvez la paire de devises souhaitée, par exemple GBPCHF. Dans l'onglet "BARs", définissez les cotations en minutes (M1) et les dates de début et de fin de la période requise. Après avoir cliqué sur le bouton "REQUEST", un fichier csv sera téléchargé, qui pourra être utilisé pour tester des stratégies avec le Metatrader ou avec vos propres programmes.
En utilisant EXCEL vous pouvez visualiser le contenu de ce fichier, où la première ligne révèle les informations du fichier, c'est-à-dire "date, heure" et ensuite" OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL", "VOL", "SPREAD".
Je sais exactement ce que ces données signifient, mais comment faire BIT et ASK à partir de ces données, que MetaTrader 5 utilise ?
Veuillez m'indiquer où dans mt5 vous pouvez vérifier les informations sur un symbole ? Je me souviens que dans mt 4 vous pouviez vérifier dans le testeur de stratégie, mais dans le testeur mt5 je n'ai pas trouvé cette fonction.
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
Il suffit d'ajouter un autre tableau CArrayObj au tableau CArrayObj : Add()
Cela ne fonctionne pas comme ça. La conversion des paramètres n'est pas autorisée.
Au fait, si ça compte. L'objet à ajouter au tableau est une classe héritée de CArrayObj.
Eh bien, il jure à la dernière ligne - conversion de paramètres non autorisée.Chers membres du forum, aidez-moi s'il vous plaît !!!
Je veux affecter une étape de prix à une variable :
int V=SymbolInfoInteger(Symb,SYMBOL_POINT) ;
error : 'SymbolInfoInteger' - aucune des surcharges ne peut être appliquée à l'appel de fonction
Quelle est mon erreur, déjà ?
int V=(int)SymbolInfoInteger(Symb,SYMBOL_POINT) ;
Alors essayez.
Chers membres du Forum !
Veuillez me conseiller ! !!
La fenêtre MetaTrader 5 affiche les valeurs Bid& Ask, qui (d'après ce que je comprends) déterminent le gain/la perte.
Cependant, lorsque j'essaie d'utiliser les cotations minute de l'historique pour tester ma stratégie, ces cotations ne contiennent pas les valeurs Bid et Ask, mais donnent les valeurs " OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL","VOL","SPREAD". Il n'est pas très clair comment prendre l'offre et la demande à partir de ces valeurs, ainsi que la façon de calculer le spread.
Tout est absolument clair. Décrivez plus en détail ce que signifie exactement "lorsque j'essaie d'utiliser les guillemets de l'historique des minutes" ? Que faites-vous ou voulez-vous faire exactement ?
Chers membres du forum, aidez-moi s'il vous plaît !!!
Je veux affecter une étape de prix à une variable :
int V=SymbolInfoInteger(Symb,SYMBOL_POINT) ;
error : 'SymbolInfoInteger' - aucune des surcharges ne peut être appliquée à l'appel de fonction
Quelle est mon erreur, déjà ?
AideSymbolInfoInteger:
1. Renvoie directement la valeur de la propriété.
2. Renvoie vrai ou faux selon le succès de la fonction. En cas de succès, la valeur de la propriété est placée dans la variable de destination passée par référence par le dernier paramètre.
C'est-à-dire OR long OR bool.
Chers membres du forum, aidez-moi s'il vous plaît !!!
Je veux affecter une étape de prix à une variable :
int V=SymbolInfoInteger(Symb,SYMBOL_POINT) ;
error : 'SymbolInfoInteger' - aucune des surcharges ne peut être appliquée à l'appel de fonction
Quelle est mon erreur, déjà ?
Point est une valeur de type double. Lorsqu'il est reçu en tant que int, il aura une valeur nulle.
SymbolInfoInteger Aide :
1. Renvoie directement la valeur de la propriété.
2. Renvoie vrai ou faux en fonction du succès de la fonction. En cas de succès, la valeur de la propriété est placée dans la variable de destination passée par référence par le dernier paramètre.
C'est-à-dire OR long OR bool.
Compris, merci)
Je viens de commencer, je ne sais pas encore comment écrire dans cette langue. Mais le problème est le suivant : si dans une nouvelle fenêtre, le graphique apparaît. Mais je ne peux pas l'afficher dans l'actuel... Quelle est mon erreur ? Considérant que je n'ai pas pu moi-même l'écrire et que je ne trouve pas d'exemples ici. De plus, il est clair que ce n'est pas par le biais d'une fonction comme SetChartData(point1,point2) ; cela se produit tout seul...
Et la variable semble être définie(indicator_chart_window), mais cela ne fonctionne toujours pas.....
Absolument tout est disponible. Décrivez plus en détail ce que signifie exactement "lorsque j'essaie d'utiliser les guillemets de l'historique des minutes" ? Que faites-vous ou voulez-vous faire exactement ?
Pour télécharger l'historique des cours, chargez MetaTrader 5, cliquez sur l'icône avec le symbole du dollar : "Symbol List Display" (ou vous pouvez appuyer sur Ctrl U). La fenêtre "Symboles" apparaît. Dans l'onglet "SPECIFICATION", trouvez la paire de devises souhaitée, par exemple GBPCHF. Dans l'onglet "BARs", définissez les cotations en minutes (M1) et les dates de début et de fin de la période requise. Après avoir cliqué sur le bouton "REQUEST", un fichier csv sera téléchargé, qui pourra être utilisé pour tester des stratégies avec le Metatrader ou avec vos propres programmes.
En utilisant EXCEL vous pouvez visualiser le contenu de ce fichier, où la première ligne révèle les informations du fichier, c'est-à-dire "date, heure" et ensuite" OPEN", "HIGH" "LOW", "CLOSE", "TICKVOL", "VOL", "SPREAD".
Je sais exactement ce que ces données signifient, mais comment faire BIT et ASK à partir de ces données, que MetaTrader 5 utilise ?