vous ne pouvez pas exécuter quelque chose de long dans OnInit - le terminal peut décharger le code
dans l'indicateur ne doit pas glisser
Oui, je suis bête... Peut-être, au lieu d'une boucle infinie dans OnInit, revenir de OnCalculate avec la même condition ? - il devrait y avoir un nombre défini lorsqu'il n'y a pas de connexion, soit -1, ou 0, ou EMPTY_VALUE
Pouvez-vous me dire s'il est possible d'utiliser une méthode non standard pour calculer la période de la MA(Moving Average) ? Je veux dire que la position de la MA sur la barre actuelle (zéro) ne sera pas déterminée par les 20 dernières barres (par exemple), mais par chaque 5m des 100 dernières, ou simplement en spécifiant le nombre de barres dans l'historique, à partir de la barre actuelle. Et, s'il existe une telle possibilité, est-il possible de spécifier la fonction directement dans le code de l'indicateur ?
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д. Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...
Plus tôt, j'ai posé la question de savoir comment simuler la fonction Print() du côté de la bibliothèque pour vérifier les données entrant dans les fonctions de la bibliothèque et pour rechercher les erreurs. On m'a conseillé d'utiliser les ressources C++ : c'est-à-dire d'enregistrer les informations dans un fichier du côté de la bibliothèque dll. En général, la bibliothèque ne peut pas créer un fichier pour y écrire les informations, le fichier n'est créé ni dans le répertoire du projet, ni dans le dossier avec le robot, essayé de spécifier le chemin par défaut ne fonctionne pas, la sortie des informations via cout ne fonctionne pas non plus, mais probablement pas parce que ce n'est pas tout à fait une application console. Qui peut vous conseiller ?
#include "stdafx.h"#include <conio.h>
#include <iostream>
#include <fstream>//подключаю библиотеку для записи в файл/*using std::cout;
using std::endl;
using std::cin;*/
using namespace std;
#define _DLLAPI extern"C" __declspec(dllexport)
_DLLAPI int __stdcall Funkt(int qa){//"C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt"
ofstream file;//"C:\\Users\\123\\Documents\\Visual Studio 2012\\Projects\\ConsoleApplication8\\ConsoleApplication8\\Moyperviyzapisfiles.txt"//"C:\\Users\\123\\documents\\visual studio 2012\\Projects\\ConsoleApplication8\\Debug\\ConsoleApplication8.dll\\Moyperviyzapisfiles.txt"
file.open("C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt"/*,ios::out*/);//Moy perviy zapis files
file<<"Moyperviyzapisfiles";//хочу записать эту фразу в файл
file.close();
return12;}
//если это делать не в библиотеке то работает.
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Si le nombre d'objets sur le graphique a augmenté, alors...
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Ils ont un préfixe standardisé, par exemple : numéro Trenler. Vous pouvez rechercher comme suit : dans la boucle if(StringFind(ObjectName(0,i), "Trendline")==0) pour les anciens ou pour les nouveaux if(StringFind(sparam, "Trendline")==0))
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.
vous ne pouvez pas exécuter quelque chose de long dans OnInit - le terminal peut décharger le code
dans l'indicateur ne doit pas glisser
Oui, je suis bête... Peut-être, au lieu d'une boucle infinie dans OnInit, revenir de OnCalculate avec la même condition ? - il devrait y avoir un nombre défini lorsqu'il n'y a pas de connexion, soit -1, ou 0, ou EMPTY_VALUE
Salutations aux commerçants et aux programmeurs !
Pouvez-vous me dire s'il est possible d'utiliser une méthode non standard pour calculer la période de la MA(Moving Average) ? Je veux dire que la position de la MA sur la barre actuelle (zéro) ne sera pas déterminée par les 20 dernières barres (par exemple), mais par chaque 5m des 100 dernières, ou simplement en spécifiant le nombre de barres dans l'historique, à partir de la barre actuelle. Et, s'il existe une telle possibilité, est-il possible de spécifier la fonction directement dans le code de l'indicateur ?
Merci pour ces informations.
Bonjour. Comment afficher le symbole du triangle vers le bas et vers le haut ?
Voici le code
bool OutText(const string name="Label",
const string text="Label", // texte
const int x=0, // Coordonnée X
const int y=0, // coordonnée le long de l'axe Y
const color clr=clrYellow, // couleur
const ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_UPPER, // méthode d'ancrage
const ENUM_BASE_CORNER corner=CORNER_LEFT_UPPER, // coin du graphique pour l'ancre
const int font_size=12, // taille de la police
const string font="Arial", // police de caractères
const double angle=0.0, // pente du texte
const bool back=false, // back
const bool selection=false, //sélectionner pour le déplacement
const bool hidden=true, // caché dans la liste des objets
const long z_order=0,
const int sub_window=0, // nombre de sous-fenêtres
const long chart_ID=0 // ID du graphique
) // priorité au clic
{
//--- réinitialiser la valeur de l'erreur
ResetLastError() ;
//--- créer une marque de texte
si(ObjectFind(chart_ID,name)==-1)
{
if(!ObjectCreate(chart_ID,name,OBJ_LABEL,sub_window,0,0))
{
Print(__FUNCTION__, " : échec de la création d'une étiquette de texte ! Code d'erreur = ",GetLastError()) ;
// retour(false) ;
}
}
//--- définir les coordonnées du marqueur
ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x) ;
ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y) ;
//--- Définir l'angle de la carte, par rapport auquel les coordonnées du point seront déterminées.
ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner) ;
//--- définir le texte
ObjectSetString(chart_ID,name,OBJPROP_TEXT,text) ;
//--- définir la police du texte
ObjectSetString(chart_ID,name,OBJPROP_FONT,font) ;
//--- définir la taille de la police
ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size) ;
//--- définir l'angle d'inclinaison du texte
ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle) ;
//--- définir la méthode d'ancrage
ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,anchor) ;
//--- définir la couleur
ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr) ;
//--- affichage en avant-plan (false) ou en arrière-plan (true)
ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back) ;
//--- activer (true) ou désactiver (false) le mode de déplacement de la marque avec la souris.
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection) ;
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection) ;
//--- cache (true) ou affiche (false) le nom de l'objet graphique dans la liste des objets.
ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden) ;
//--- définir la priorité de l'événement de réception du clic de souris
ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order) ;
//--- exécution réussie
retour (vrai) ;
}
Comment faire pour que le symbole du triangle apparaisse ?
Ce qui devrait être écrit
OutText("LabelBuy1", ">", 100, 20, clrWhite, ANCHOR_UPPER,CORNER_LEFT_UPPER,14, "Arial") ;
Pour faire un triangle ?
Plus tôt, j'ai posé la question de savoir comment simuler la fonction Print() du côté de la bibliothèque pour vérifier les données entrant dans les fonctions de la bibliothèque et pour rechercher les erreurs. On m'a conseillé d'utiliser les ressources C++ : c'est-à-dire d'enregistrer les informations dans un fichier du côté de la bibliothèque dll. En général, la bibliothèque ne peut pas créer un fichier pour y écrire les informations, le fichier n'est créé ni dans le répertoire du projet, ni dans le dossier avec le robot, essayé de spécifier le chemin par défaut ne fonctionne pas, la sortie des informations via cout ne fonctionne pas non plus, mais probablement pas parce que ce n'est pas tout à fait une application console. Qui peut vous conseiller ?
Comment remplacer l'image standard dans la description par ...

... Je peux mettre le mien ?
Comment remplacer l'image standard dans la description par ...
... Je peux mettre le mien ?
#Icône de propriété
Comme c'est simple... Merci !
Bonjour !
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Bonjour !
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Bonjour !
Pourriez-vous me dire comment implémenter la détection d'objets graphiques dessinés manuellement sur un graphique (ligne horizontale ou de tendance, par exemple) et ensuite récupérer leurs propriétés (niveau de prix au bon moment) ?
Ils ont un préfixe standardisé, par exemple : numéro Trenler. Vous pouvez rechercher comme suit : dans la boucle if(StringFind(ObjectName(0,i), "Trendline")==0) pour les anciens ou pour les nouveaux if(StringFind(sparam, "Trendline")==0))