STARIJ: Essayez d'écrire la date, l'heure, l'enchère et les résultats de vos calculs dans le fichier pour chaque tick. Ensuite, téléchargez-la sur Excel et vérifiez-la. Cela n'a guère de sens de réconcilier toutes les dizaines de lignes du programme !
Mais regardez, vous avez le retour dans chaque branche de l'opérateur conditionnel, c'est-à-dire qu'il est toujours exécuté. Donc on le retire de l'opérateur conditionnel :
Enchère [1] - c'est vrai ?
Merci. Je vais l'essayer maintenant. J'ai compris l'essentiel de votre code et c'est déjà une grande réussite pour moi :) J'ai aussi vu mes défauts.
STARIJ: Essayez d'écrire la date, l'heure, l'enchère et les résultats de vos calculs dans le fichier pour chaque tick. Ensuite, téléchargez-la sur Excel et vérifiez-la. Cela n'a guère de sens de réconcilier toutes les dizaines de lignes du programme !
Mais regardez, vous avez le retour dans chaque branche de l'opérateur conditionnel, c'est-à-dire qu'il est toujours exécuté. Nous le sortons donc de la portée de l'opérateur conditionnel :
Enchère [1] - c'est comme ça ?
J'ai inséré le code dans le "constructeur" de l'indicateur personnalisé. Je l'ai compilé. Le compilateur a généré 1 avertissement : Deux OnCalculate sont définis. La version OHLC sera utilisée (je ne comprends pas ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? S'il vous plaît, conseillez-nous.
#property version"1.00"#property strict#property indicator_separate_window#property indicator_buffers2#property indicator_plots2//--- plot Label1#property indicator_label1"Label1"#property indicator_type1DRAW_HISTOGRAM#property indicator_color1clrRed#property indicator_style1STYLE_SOLID#property indicator_width11//--- plot Label2#property indicator_label2"Label2"#property indicator_type2DRAW_HISTOGRAM#property indicator_color2clrDarkTurquoise#property indicator_style2STYLE_SOLID#property indicator_width21//- local variablesint Tick, Tick2; // Для вставки программы используйте кнопку SRCdouble Bid1;
//--- indicator buffersdouble Label1Buffer[];
double Label2Buffer[];
//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+intOnInit()
{
//--- indicator buffers mappingSetIndexBuffer(0,Label1Buffer);
SetIndexBuffer(1,Label2Buffer);
Bid1=Bid;
//---return(INIT_SUCCEEDED);
}
void start() // Вместо start более модно писать OnTick
{
if(Bid > Bid1) Tick++;
else Tick2++;
Bid1=Bid;
}
//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
//---//--- return value of prev_calculated for next callreturn(rates_total);
}
//+------------------------------------------------------------------+
J'ai inséré le code dans le "constructeur" de l'indicateur personnalisé. Je l'ai compilé. Le compilateur m'a donné 1 avertissement : deux OnCalculate sont définis. La version OHLC sera utilisée (je ne sais pas ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? Pouvez-vous nous conseiller ?
Lorsque vous collez le code ici, utilisez le bouton de l'éditeur de message SRC - en haut du champ du message, il y a beaucoup de choses utiles dans le panneau de formatage du message.
Il n'est pas difficile de lever les yeux juste au-dessus du texte que vous tapez, n'est-ce pas ? Et c'est beaucoup plus agréable pour les gens de regarder du code normal plutôt que le swag, n'est-ce pas ?
J'ai inséré votre code pour vous dans votre post correctement (SRC)
Lorsque vous collez le code ici, utilisez le bouton SRC de l'éditeur de message - il y a beaucoup de fonctions utiles dans le panneau de formatage de message en haut de la boîte de message.
Il n'est pas difficile de lever les yeux juste au-dessus du texte que vous tapez, n'est-ce pas ? Et c'est beaucoup plus agréable pour les gens de regarder le code normal plutôt que le swag, n'est-ce pas ?
J'ai mis votre code dans votre message pour vous correctement (SRC)
A émis 1 avertissement au compilateur : deux OnCalculate sont définis. La version OHLC sera utilisée (je ne suis pas sûr de ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? S'il vous plaît, conseillez-nous.
La fonction était appelée Start avant, maintenant elle est appelée OnTick dans Expert Advisor et OnCalculate dans l'indicateur. Le compilateur prévient : vous avez deux fois la même fonction sous des noms différents. Déplacez le contenu de Start vers OnCalculate et supprimez Start. Vous devrez également décrire dans votre programme ce qui doit être affiché et comment. Décidez d'abord vous-même - quelle image doit être présente ? Il est préférable de commencer à étudier le langage MQL en écrivant des scripts. Un conseiller expert est plus compliqué, un indicateur l'est encore plus.
La fonction s'appelait auparavant Start, elle s'appelle maintenant OnTick dans l'EA et OnCalculate dans l'indicateur. Le compilateur avertit : vous avez la même fonction deux fois sous des noms différents. Déplacez le contenu de Start vers OnCalculate et supprimez Start. Vous devrez également décrire dans votre programme ce qui doit être affiché et comment. Décidez d'abord vous-même - quelle image doit être présente ? Il est préférable de commencer à étudier le langage MQL en écrivant des scripts. Le conseiller expert est plus difficile, l'indicateur est encore plus difficile.
Je ne peux pas insérer le contenu de Start dans OnCalculate et je reçois beaucoup d'erreurs.
YarTrade: Je ne peux pas insérer le contenu de Start dans OnCalculate, cela génère beaucoup d'erreurs
L'indicateur n'affiche que les informations du début. La fenêtre de données (Ctrl-D) affiche les données du chandelier sur lequel le curseur est pointé.
//+------------------------------------------------------------------+//| -Тики-07.mq4 |//+------------------------------------------------------------------+#property version"1.00"#property strict#property indicator_separate_window#property indicator_buffers2// #property indicator_plots 2 в MQL-4 такое отсутствует#property indicator_label1"Вверх"#property indicator_type1DRAW_HISTOGRAM#property indicator_color1 Salmon
#property indicator_style1STYLE_SOLID#property indicator_width12#property indicator_label2"Вниз"#property indicator_type2DRAW_HISTOGRAM#property indicator_color2clrDarkTurquoise#property indicator_style2STYLE_SOLID#property indicator_width22datetime Время=0; // Время прошлого бара
double Bid1;
double Buf_1[], Buf_2[]; // 2 буфера//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+voidOnInit()
{
IndicatorDigits(0);
SetIndexBuffer(0,Buf_1);
SetIndexBuffer(1,Buf_2);
Bid1=Bid;
}
//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
datetime Вр=Time[0]; // Время текущего бара
if(Вр>Время) // Если новый бар
{
Время=Вр; // Запомнить
Buf_1[0]=0; // и обнулить последний элемент буфера
Buf_2[0]=0;
}
if(Bid > Bid1) Buf_1[0]++;
else Buf_2[0]--;
Bid1=Bid;
return(rates_total);
}
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.
Essayez d'écrire la date, l'heure, l'enchère et les résultats de vos calculs dans le fichier pour chaque tick. Ensuite, téléchargez-la sur Excel et vérifiez-la. Cela n'a guère de sens de réconcilier toutes les dizaines de lignes du programme !
Mais regardez, vous avez le retour dans chaque branche de l'opérateur conditionnel, c'est-à-dire qu'il est toujours exécuté. Donc on le retire de l'opérateur conditionnel :
Enchère [1] - c'est vrai ?
Merci. Je vais l'essayer maintenant. J'ai compris l'essentiel de votre code et c'est déjà une grande réussite pour moi :) J'ai aussi vu mes défauts.
Qu'est-ce que le bouton SRC ?
Essayez d'écrire la date, l'heure, l'enchère et les résultats de vos calculs dans le fichier pour chaque tick. Ensuite, téléchargez-la sur Excel et vérifiez-la. Cela n'a guère de sens de réconcilier toutes les dizaines de lignes du programme !
Mais regardez, vous avez le retour dans chaque branche de l'opérateur conditionnel, c'est-à-dire qu'il est toujours exécuté. Nous le sortons donc de la portée de l'opérateur conditionnel :
Enchère [1] - c'est comme ça ?
J'ai inséré le code dans le "constructeur" de l'indicateur personnalisé. Je l'ai compilé. Le compilateur a généré 1 avertissement : Deux OnCalculate sont définis. La version OHLC sera utilisée (je ne comprends pas ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? S'il vous plaît, conseillez-nous.
J'ai inséré le code dans le "constructeur" de l'indicateur personnalisé. Je l'ai compilé. Le compilateur m'a donné 1 avertissement : deux OnCalculate sont définis. La version OHLC sera utilisée (je ne sais pas ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? Pouvez-vous nous conseiller ?
Lorsque vous collez le code ici, utilisez le bouton de l'éditeur de message SRC - en haut du champ du message, il y a beaucoup de choses utiles dans le panneau de formatage du message.
Il n'est pas difficile de lever les yeux juste au-dessus du texte que vous tapez, n'est-ce pas ? Et c'est beaucoup plus agréable pour les gens de regarder du code normal plutôt que le swag, n'est-ce pas ?
J'ai inséré votre code pour vous dans votre post correctement (SRC)
Lorsque vous collez le code ici, utilisez le bouton SRC de l'éditeur de message - il y a beaucoup de fonctions utiles dans le panneau de formatage de message en haut de la boîte de message.
Il n'est pas difficile de lever les yeux juste au-dessus du texte que vous tapez, n'est-ce pas ? Et c'est beaucoup plus agréable pour les gens de regarder le code normal plutôt que le swag, n'est-ce pas ?
J'ai mis votre code dans votre message pour vous correctement (SRC)
Oui. Merci. Je ne le savais pas.
A émis 1 avertissement au compilateur : deux OnCalculate sont définis. La version OHLC sera utilisée (je ne suis pas sûr de ce que cela signifie).
J'ai reçu le produit compilé. Attachez-le au tableau. La fenêtre séparée pour le graphique est ouverte mais elle ne montre aucune information sur l'histogramme, malgré les ticks.
Qu'est-ce qui ne va pas ? S'il vous plaît, conseillez-nous.
La fonction était appelée Start avant, maintenant elle est appelée OnTick dans Expert Advisor et OnCalculate dans l'indicateur. Le compilateur prévient : vous avez deux fois la même fonction sous des noms différents. Déplacez le contenu de Start vers OnCalculate et supprimez Start. Vous devrez également décrire dans votre programme ce qui doit être affiché et comment. Décidez d'abord vous-même - quelle image doit être présente ? Il est préférable de commencer à étudier le langage MQL en écrivant des scripts. Un conseiller expert est plus compliqué, un indicateur l'est encore plus.
La fonction s'appelait auparavant Start, elle s'appelle maintenant OnTick dans l'EA et OnCalculate dans l'indicateur. Le compilateur avertit : vous avez la même fonction deux fois sous des noms différents. Déplacez le contenu de Start vers OnCalculate et supprimez Start. Vous devrez également décrire dans votre programme ce qui doit être affiché et comment. Décidez d'abord vous-même - quelle image doit être présente ? Il est préférable de commencer à étudier le langage MQL en écrivant des scripts. Le conseiller expert est plus difficile, l'indicateur est encore plus difficile.
Je ne peux pas insérer le contenu de Start dans OnCalculate et je reçois beaucoup d'erreurs.
L'indicateur n'affiche que les informations du début. La fenêtre de données (Ctrl-D) affiche les données du chandelier sur lequel le curseur est pointé.
:)
Et comment formuler la situation créée avec des noms de fonctions ?
start - nom obsolète. OnTick() est le nom réel de la fonction de gestion des tics.
Quoi qu'il en soit, peu importe la définition que vous en donnez, le seul mot "tendance" m'a fait sourire.
start - nom obsolète. OnTick() est le nom réel de la fonction de gestion des tics.
De toute façon, peu importe comment on le définit, c'est juste le mot "tendance" qui fait sourire.