Dans le testeur sur un autre symbole ? Ou en démo/réel sur un autre symbole ? Ou dans le testeur sur ce symbole ? Ou sur démo/real sur ce symbole ?
Pourquoi faut-il que vous sortiez tout de vous ?
Où voulez-vous en venir ? Quelle différence cela fait-il de savoir où vous l'avez essayé ? La question est de savoir si Point = 0. Et si c'est le cas, comment dois-je écrire le code correctement pour ne pas rencontrer une erreur : division par zéro?
Désolé, je suis très ringard - je ne comprends pas vraiment. Peut-être que vous avez l'indicateur le plus simple avec un code de certains, j'ai une analogie à comprendre ? Parce que je n'en ai pas trouvé.
J'ai un code très simple qui met des points au milieu de la barre. Comment faire pour que le texte apparaisse lorsque je le survole, ou une boîte, peu importe.
#property indicator_chart_window #property indicator_buffers1 #property indicator_color1 Black //---- input parameters //---- buffers double ExtMapBuffer1[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_ARROW); SetIndexArrow(0,159); SetIndexBuffer(0,ExtMapBuffer1); SetIndexEmptyValue(0,0.0); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //----
Gevorg Hakobyan: Où voulez-vous en venir ? Quelle différence cela fait-il de savoir où vous l'avez essayé ? La question est de savoir si Point = 0. Et si c'est le cas, comment dois-je écrire un code correct pour ne pas rencontrer une erreur : la division par zéro?
Faites comme vous voulez.
Il faut donc vérifier que le diviseur est à zéro avant de diviser.
Je pensais que vous étiez intéressé par la cause, pas l'effet, et la béquille appropriée.
En général, c'est ce dont vous avez besoin, mais le problème est que la description sera assez longue, et cette méthode peut littéralement écrire quelques mots - le reste n'apparaît pas.
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.
Dans le testeur sur un autre symbole ? Ou en démo/réel sur un autre symbole ? Ou dans le testeur sur ce symbole ? Ou sur démo/real sur ce symbole ?
Pourquoi faut-il que vous sortiez tout de vous ?
Désolé, je suis très ringard - je ne comprends pas vraiment.
Peut-être que vous avez l'indicateur le plus simple avec un code de certains, j'ai une analogie à comprendre ? Parce que je n'en ai pas trouvé.
J'ai un code très simple qui met des points au milieu de la barre. Comment faire pour que le texte apparaisse lorsque je le survole, ou une boîte, peu importe.
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Black
//---- input parameters
//---- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,159);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
int limit=Bars-counted_bars;
//----
for(int i=limit; i>=0; i--)
{
double fabody0 = fabs(Close[i]-Open[i]);
double fabody1 = fabs(Close[i+1]-Open[i+1]);
double fabody2 = fabs(Close[i+2]-Open[i+2]);
double fabody3 = fabs(Close[i+3]-Open[i+3]);
double fabody4 = fabs(Close[i+4]-Open[i+4]);
double fabody5 = fabs(Close[i+5]-Open[i+5]);
double fabody6 = fabs(Close[i+6]-Open[i+6]);
double fabody7 = fabs(Close[i+7]-Open[i+7]);
if((fabody0>fabody1) && (fabody0>fabody2) && (fabody0>fabody3) && (fabody0>fabody4) && (fabody0>fabody5) && (fabody0>fabody6) &&(Volume[i]>Volume[i+1]))
{
if (((Close[i]>Open[i])&&(Low[i]+(High[i]-Low[i])/2>Low[i+1]+(High[i+1]-Low[i+1])*0.9))||((Close[i]<Open[i])&&(Low[i]+(High[i]-Low[i])/2<Low[i+1]+(High[i+1]-Low[i+1])*0.1)))
ExtMapBuffer1[i]=(iHigh(Symbol(),0,i)+iLow(Symbol(),0,i))/2;
}
}
//----
return(0);
}
Où voulez-vous en venir ? Quelle différence cela fait-il de savoir où vous l'avez essayé ? La question est de savoir si Point = 0. Et si c'est le cas, comment dois-je écrire un code correct pour ne pas rencontrer une erreur : la division par zéro?
Faites comme vous voulez.
Je n'ai pas lu tout le dialogue, mais je soupçonne un problème d'impression de la cinquième décimale.
Non, il divise par Point() et obtient une division par zéro.
Je n'ai pas lu tout le dialogue, mais je soupçonne un problème d'impression de la cinquième décimale.
Est-ce que ça pourrait être le problème ?
Essayez
Bonjour.
Aidez-moi, s'il vous plaît.
Maintenant le lot de chaque ordre suivant augmente en 1, 2, 3, 4, 5...
Je veux que le lot de chaque commande augmente non pas à chaque commande, mais par tranches de 3, donc 1, 1, 1, 1, 2, 2, 2, 3, 3, 3...
extern double Plus_LotStop = 0.01;
extern double Plus_N_ORD = 3; //каждые N ордеров
void OnTick()
{
//---
for (int i=1; i<=OrdersStop; i++)
{
if((Close[1]<Open[1]&&Close[2]>Open[2]&&NumberOfPositions(Symbol(), -1,_Magic)<1))
{
OPENORDER (OP_BUYSTOP,PriceBS,LOTs,_Magic,i);
numB++;
PriceBS = NormalizeDouble(PriceBS+Step_Stop*Point,Digits);
OPENORDER (OP_SELLSTOP,PriceSS,LOTs,_Magic,i);
numS++;
PriceSS = NormalizeDouble(PriceSS-Step_Stop*Point,Digits);
}
LOTs=LOTs+Plus_LotStop;
}
}