Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 346

 
Сергей:

Je comprends que pour les multidevises, la variante proposée par@Nauris Zukas fonctionnera, du moins pour moi.

Et votre variante est meilleure pour la monnaie unique, car elle prend les données du graphique auquel elle est attachée.

En général, vous ne le comprenez pas du tout. Vous pouvez placer le curseur sur le nom de la fonction et appuyer sur F1 - vous obtenez une aide complète pour cette fonction.

Vitaliy a proposé la fonction qui fonctionne indifféremment sur MT4 et MT5 - il a donc écrit qu'il est préférable de l'utiliser, toutes choses égales par ailleurs.

Vous avez choisi celui qui ne fonctionne que sur MT4.

 
Artyom Trishkin:

Vous avez tout faux. Vous pouvez placer le curseur sur le nom de la fonction et appuyer sur F1 - vous obtiendrez une aide complète sur cette fonction.

Vitaliy vous a proposé une fonction qui fonctionne aussi bien sur MT4 que sur MT5 - c'est pourquoi il a écrit qu'il est préférable de l'utiliser, toutes choses égales par ailleurs.

Vous avez choisi celui qui ne fonctionne que sur MT4.

Je vois, merci.
 
Сергей:

Je comprends que pour les multidevises, la variante proposée par@Nauris Zukas fonctionnera, du moins pour moi.

Votre version est meilleure pour la monnaie unique car elle prend les données du graphique qui lui est attaché.

Vous pouvez utiliser la variante de Vitaly Muzichenko, mais n'oubliez pas de modifier Symbol(). Si vous souhaitez utiliser une autre paire, il vous suffit de spécifier la paire de devises dont vous avez besoin. Par exemple, comme ceci :

 double EUR_point=SymbolInfoDouble("EURUSD",SYMBOL_POINT);

Bonne chance ! :)

 
Vitaly Muzichenko:

Et plus loin dans le sujet. Prenez le paramètre chaîne entre guillemets

Ce sont ses noms variables.

 

Question :


Il existe un indicateur1 qui trace une ligne basée sur le maximum et le bleu des 20 dernières valeurs. Sur un graphique en chandelier, cela ressemble à un canal de prix.

Il existe un autre indicateur auto-écrit2 quitrace une ligne comme le RSI dans une fenêtre séparée sous le graphique des prix.


Comment faire pour qu'un indicateur1 s'appuie sur les données de l'indicateur2.

 
Sergey Likho:

Question :


Il existe un indicateur1 qui trace une ligne basée sur le maximum et le bleu des 20 dernières valeurs. Sur un graphique en chandelier, cela ressemble à un canal de prix.

Il existe un autre indicateur auto-écrit2 quitrace une ligne comme le RSI dans une fenêtre séparée sous le graphique des prix.


Comment faire pour qu'un indicateur1 s'appuie sur les données de l'indicateur2.

Si vous voulez que l'indicateur2 ne soit pas dessiné dans une fenêtre séparée, essayez de trouver #property indicator_separate_window et remplacez-le par #property indicator_chart_window. Peut-être que ça aidera.
 
Nauris Zukas:
Si vous voulez que l'indicateur 2 ne soit pas dessiné dans une fenêtre séparée, essayez de trouver #property indicator_separate_window et remplacez-le par #property indicator_chart_window. Peut-être que ça aidera.

Non, je veux que l'indicateur1 prenne un tableau de valeurs de l'indicateur2 au lieu des données du chandelier (par exemple le tableau Close[]).

 
Sergey Likho:

Question :


Il existe un indicateur1 qui trace une ligne basée sur le maximum et le bleu des 20 dernières valeurs. Sur le graphique en chandelier, cela ressemble à un canal de prix.

Il existe un autre indicateur auto-écrit2 quitrace une ligne comme le RSI dans une fenêtre séparée sous le graphique des prix.


Comment faire pour que l'indicateur 1 dessine une ligne comme le RSI ?

Commencez la lecture à partir d'ici

Forum pour le trading, les systèmes de trading automatisés et les tests de stratégie

Toutes les questions des débutants sur MQL4, aide et discussion sur les algorithmes et les codes

potom, 2017.10.15 16:07

Comment ajouter la fonction Premier/Précédent à un indicateur déjà préparé. C'est-à-dire l'éditer.

Tout le monde dit ça.

int OnCalculate (const int rates_total,
const int prev_calculated,
const datetime& time[],
const double& open[],
const double& high[],
const double& low[],
const double& close[],
const long& tick_volume[],
const long& volume[],
const int& spread[])
{

Devrait être remplacé par ceci.

int OnCalculate (const int rates_total,
const int prev_calculated,
const int begin,
const double &price[])
{

Mais tout cela ne donne aucun résultat. Il peut être utile de l'écrire et non de l'éditer.

Pouvez-vous me dire comment implémenter cette fonction en détail ?

 
Y a-t-il une chance que le programme du graphique A, sur le dernier tick avant la fermeture de la barre, trouve une barre qui est déjà apparue sur le graphique B ? (Les graphiques A et B représentent des instruments différents)
En d'autres termes, entre le moment où un tick est reçu sur le graphique A et celui où une requête concernant le nombre de barres sur le graphique B est reçue, une nouvelle barre apparaîtra sur le graphique B.
 
Bonjour, pouvez-vous me dire ce qu'a la commande du placement à l'historique, id ?