Comment j'ai assemblé mon conseiller par essais et erreurs - page 56

 
Alexsandr San:

#propriété version "1.021"

Modifier cette fonction, en commençant par l'heure, ainsi que le moment où cette fonction doit cesser de fonctionner.

#propriété version "1.023"

J'ai ajouté la possibilité de configurer cette fonction pour qu'elle soit exécutée par temps, trois fois.

input string   t10="---- CalendarValueLast 1-----";              //
input datetime HoursFrom                    = D'1970.01.01';     // 1 Время старт Сигнал Календаря
input datetime HoursTo                      = D'1970.01.01';     // Время стоп Сигнал Календаря
input string   c10="---- CalendarValueLast 2-----";              //
input datetime HoursFrom1                   = D'1970.01.01';     // 2 Время старт Сигнал Календаря
input datetime HoursTo1                     = D'1970.01.01';     // Время стоп Сигнал Календаря
input string   v10="---- CalendarValueLast 3-----";              //
input datetime HoursFrom2                   = D'1970.01.01';     // 3 Время старт Сигнал Календаря
input datetime HoursTo2                     = D'1970.01.01';     // Время стоп Сигнал Календаря
input int      InpStep6                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
input bool     InpCalend                    = false;             // Double (Horizontal Line or Trend Line)
input string   InpSelldar                   = "Buydar";          // Line name (Horizontal Line or Trend Line)
input ENUM_TRADE_COMMAND InpCalendCommandS  = open_sell;         // Trade command:
input string   InpBuydar                    = "Selldar";         // Line name (Horizontal Line or Trend Line)
input ENUM_TRADE_COMMAND InpCalendCommandB  = open_buy;          // Trade command:

Photo par l'heure est fixée pour tester la fonction

Dossiers :
 

Important ! Lors de la duplication d'une ligne horizontale, vous devez calculer la distance de sa répétition, afin qu'elle ne touche pas une bougie (barre).

C'est mieux sur un cadre temporel plus petit, il y a moins de bougies (barres) dessus.

C'est ici que vous calculez et réglez la distance -

input int      InpStep6                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
 

J'ai trouvé l'erreur, je l'ai corrigée.

#propriété version "1.024"

Dossiers :
 
Alexsandr San:

Important ! Lors de la duplication d'une ligne horizontale, vous devez calculer la distance de sa répétition, afin qu'elle ne tombe pas sur une bougie (barre).

C'est mieux sur un cadre temporel plus petit, il y a moins de bougies (barres) dessus.

C'est ici que la distance est calculée et définie.

J'aurais dû définir une distance distincte pour chaque ligne horizontale.

Mise à jour de la version de #propriété "1.025"

input string   v10="---- CalendarValueLast 3-----";              //
input datetime HoursFrom2                   = D'1970.01.01';     // 3 Время старт Сигнал Календаря
input datetime HoursTo2                     = D'1970.01.01';     // Время стоп Сигнал Календаря
input bool     InpCalend                    = false;             // Double (Horizontal Line or Trend Line)
input string   InpSelldar                   = "Buydar";          // Line name (Horizontal Line or Trend Line)
input int      InpStep7                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpCalendCommandS  = open_sell;         // Trade command:
input string   InpBuydar                    = "Selldar";         // Line name (Horizontal Line or Trend Line)
input int      InpStep6                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpCalendCommandB  = open_buy;          // Trade command:

Le double (ligne horizontale ou ligne de tendance), si vous le définissez sur "0", n'existera pas.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

- ces lignes horizontales sont reliées entre elles par une double

input string   t3="----- Trailing Line: 1   -----";              //
input string   InpObjUpName                 = "ZTOP";            // Obj: TOP (Horizontal Line)
input int      InpStep1                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpTradeCommand    = Line2_sells;       // Obj:  command:
input string   InpObjDownName               = "ZLOWER";          // Obj: LOWER (Horizontal Line)
input int      InpStep2                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InTradeCommand     = Line1_buys;        // Obj:  command:
input ushort   InpObjTrailingStop           = 0;                 // Obj: Trailing Stop (distance from price to object, in pips)
input ushort   InpObjTrailingStep           = 5;                 // Obj: Trailing Step, in pips (1.00045-1.00055=1 pips)
input string   t4="----- Trailing Line: 2   -----";              //
input string   InpObjUpNameG                = "POT";             // Obj: TOP (Horizontal Line)
input int      InpStep3                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpTradeCommandG   = Line2_sells;       // Obj:  command:
input string   InpObjDownNameG              = "REWOL";           // Obj: LOWER (Horizontal Line)
input int      InpStep4                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InTradeCommandG    = Line1_buys;        // Obj:  command:
input ushort   InpObjTrailingStopG          = 0;                 // Obj: Trailing Stop (distance from price to object, in pips)
input ushort   InpObjTrailingStepG          = 5;                 // Obj: Trailing Step, in pips (1.00045-1.00055=1 pips)

-----------------------------------------------------------------

Si sur toutes ces lignes horizontales, nous fixons la distance. A partir des boutons, nous obtenons (ACHETER au-dessus du prix, VENDRE en dessous du prix)

USDCHFH1

Dossiers :
 

J'ai créé un assistant de fermeture des profits et des pertes sans rien faire, et il supprime également les ordres en attente.

input string Template      = "ADX";     // Имя шаблона(without '.tpl')
input double TargetProfit  = 999999.99; // Прибыль
input double TargetLoss    = 999999.99; // Убыток

Vous le placez sur le graphique adjacent et il surveille le profit
.

Dossiers :
 
Alexsandr San:

J'ai créé un assistant de fermeture des profits et des pertes sans rien faire, et il supprime également les ordres en attente.

Vous le placez sur le graphique adjacent et il surveille le profit
.

Il vaut mieux le faire de cette façon !

input double TargetProfit  = 999999.99; // Баланс + Прибыль(прибавить к балансу)
input double TargetLoss    = 0;         // Баланс - Убыток(отнять от баланса)

vous devez le remplacer par

   if(AccountInfoDouble(ACCOUNT_EQUITY)<=TargetLoss ||
      AccountInfoDouble(ACCOUNT_EQUITY)>=TargetProfit)

---------------------------------------------------

Ici, dans le testeur - en même temps, vous pouvez vous entraîner ( perte de 10000 - 16 )

Instantané.PNG

Dossiers :
 

Celui-ci est presque une vraie aide ! !!!!!

//---
input string Template      = "ADX";     // Имя шаблона(without '.tpl')
input double TargetProfit  = 999999.99; // Баланс + Прибыль(прибавить к балансу)
input double TargetLoss    = 0;         // Баланс - Убыток(отнять от баланса)
input string tL="--Lots Parameters--";  //
input uint   maxLimits     = 1;         // Кол-во Позиции Открыть в одну сторону
input double InpLots1      = 0.01;      // Lots 1
input int    InpLots_01    = 200;       // До убытка валюте Lots 0.01
input double InpLots2      = 0.02;      // Lots 2
input int    InpLots_02    = 400;       // До убытка валюте Lots 0.02
input double InpLots3      = 0.04;      // Lots 3
input int    InpLots_03    = 800;       // До убытка валюте Lots 0.04
input double InpLots4      = 0.08;      // Lots 4
input string t="--Parameters TP SL--";  //
input double InpTakeProfit = 1000000;   // Прибыль на паре в валюте
input double InpStopLoss   = 1000000;   // Убыток на паре в валюте
//---

Instantané1

Instantané2

Dossiers :
 

Pas besoin de me remercier ! Utilisez-le pour votre santé !

---------------------------------------------------

cette version a été améliorée - elle peut fonctionner à la fois pour les points et les devises

Le stop et le profit à l'achat ainsi que le stop et le profit à la vente peuvent être calculés à la fois en devises et en pips.

//---
input string Template       = "ADX";     // Имя шаблона(without '.tpl')
input double TargetProfit   = 999999.99; // Баланс + Прибыль(прибавить к балансу)
input double TargetLoss     = 0;         // Баланс - Убыток(отнять от баланса)
input string tL="--Lots Parameters--";   //
input uint   maxLimits      = 1;         // Кол-во Позиции Открыть в одну сторону
input double InpLots1       = 0.01;      // : Lots 1
input int    InpLots_01     = 200;       // Exchange Lots >< Point Lots
input double InpLots2       = 0.02;      // : Lots 2
input int    InpLots_02     = 400;       // Exchange Lots >< Point Lots
input double InpLots3       = 0.04;      // : Lots 3
input int    InpLots_03     = 800;       // Exchange Lots >< Point Lots
input double InpLots4       = 0.08;      // : Lots 4
input string t="--Exchange TP SL--";     //
input double InpTakeProfit  = 1000000;   // Exchange TP >< Point TP
input double InpStopLoss    = 1000000;   // Exchange SL >< Point SL
input string m="Exchange><Point TP SL";  //
input bool   InpExcPoi      = false;     // Exchange= false; Point= true;
//---
Dossiers :
 
Alexsandr San:

Pas besoin de me remercier ! Utilisez-le pour votre santé !

---------------------------------------------------

Cette version est améliorée - elle peut fonctionner à la fois pour les points et les devises.

Les stops et les profits sur les achats et les ventes peuvent être calculés en devises et en pips.

#propriété version "1.026"

Et toutes sortes d'autres choses.

//+------------------------------------------------------------------+
//| ENUM_TRADE_COMMAND                                               |
//+------------------------------------------------------------------+
enum ENUM_TRADE_COMMAND
  {
   Turn_Off=0,       // TURN  OFF
   Line1_Line1=1,    // Line: LOWER
   Line2_Line2=2,    // Line: TOP
   Line_Line=3,      // Line: LOWER + Line: TOP
   Line1_buys=4,     // Line: LOWER + Buy's
   Line2_sells=5,    // Line: TOP + Sell's
   sells_Line1=6,    // Line: LOWER + Sell's
   buys_Line2=7,     // Line: TOP + Buy's
   close_buys=8,     // Close All Buy's
   close_sells=9,    // Close All Sell's
   close_all=10,     // Close All Buy's and Sell's
   open_buy=11,      // Open  Buy
   open_sell=12,     // Open  Sell
   close_open_b=13,  // Close Sell + Open Buy
   close_open_s=14,  // Close Buy + Open Sell
   open_buy_sell=15, // Open  Buy and Sell
  };
//+------------------------------------------------------------------+
input string   t="-----   Balans Parameters -----";              //
input string   Template                     = "ADX";             // Имя шаблона(without '.tpl')
input bool     Inpwithout                   = false;             // Сменить только шаблон (true)
input datetime InpMonday_2                  = D'1970.01.01';     // Dell (00::00 -> off)
input double   TargetProfit                 = 999999.99;         // Баланс + Прибыль(прибавить к балансу)
input double   TargetLoss                   = 0;                 // Баланс - Убыток(отнять от баланса)
input string   t0="-----  Lots Parameters   -----";              //
input uint     maxLimits                    = 1;                 // Кол-во Позиции Открыть в одну сторону
input double   InpLots1                     = 0.01;              // : Lots 1
input int      InpLots_01                   = 200;               // Exchange Lots >< Point Lots
input double   InpLots2                     = 0.02;              // : Lots 2
input int      InpLots_02                   = 400;               // Exchange Lots >< Point Lots
input double   InpLots3                     = 0.04;              // : Lots 3
input int      InpLots_03                   = 800;               // Exchange Lots >< Point Lots
input double   InpLots4                     = 0.08;              // : Lots 4
input string   t1="-----  TP SL             -----";              //
input int      InpTakeProfit                = 900;               // Take Profit("0"-No.5<100)(1.00045-1.00055=1 pips)
input double   InpTProfit                   = 1000000;           // Exchange TP >< Point TP
input double   InpStopLoss                  = 1000000;           // Exchange SL >< Point SL
input string   E="-----  Exchange><Point TP SL---";              //
input bool     InpExcPoi                    = false;             // Exchange= false; Point= true;
input string   t2="----- Price Line:        -----";              //
input string   InpFont0                     = "BUY";             // Obj: BUY (Obj:Name) ВЕРХУ
input ENUM_TRADE_COMMAND InpCSCommand       = close_open_b;      // Obj:  command:
input string   InpFont1                     = "SELL";            // Obj: SELL (Obj:Name) ВНИЗУ
input ENUM_TRADE_COMMAND InCSCommand        = close_open_s;      // Obj:  command:
input double   InpObjTrail                  = 1.0001;            // Obj: Trailing Stop MACD ("0" -> Off)
input double   InpObjTrailStep              = 1.0001;            // Obj: Trailing Step MACD
input bool     InpDub                       = false;             // "0.0":Price=false(Trail->Off) "LOW":Price=true(Trail->ON)
input bool     InpDubll                     = false;             // Duplicate "BUY""SELL" (ObjTrailStep)
input ushort   InpObjTrailingStopCS         = 0;                 // Obj: Trailing Stop (distance from price to object, in pips)
input ushort   InpObjTrailingStepCS         = 5;                 // Obj: Trailing Step, in pips (1.00045-1.00055=1 pips)
input string   InpFont2                     = "LOW Up";          // Obj: Name Price Line BUY
input string   InpFont3                     = "LOW Down";        // Obj: Name Price Line SELL
input bool     InpOnTimer                   = false;             // On(Вкл.) "LOW Up" "LOW Down"
input ushort   InpIndentUp                  = 50;                // Indent up, in pips (1.00045-1.00055=1 pips)
input ushort   InpIndentDown                = 100;               // Indent down, in pips (1.00045-1.00055=1 pips)
input string   t3="----- Indicators: SELL   -----";              //
input string   short_name                   = "LeMan_BrainTrend1Sig"; // Name Indicators "SELL"
input bool     InpIndicators                = false;             // Indicators: Start (true)
input ENUM_TRADE_COMMAND InpTradeCommandY   = open_sell;         // Trade command: (BuyBuffer Indicators)
input ENUM_TRADE_COMMAND InpTradeCommandU   = close_sells;       // Trade command: (SellBuffer Indicators)
input string   t4="----- Indicators: BUY    -----";              //
input string   short_name1                  = "LeMan_BrainTrend1Sig"; // Name Indicators "BUY"
input bool     InpIndicators1               = false;             // Indicators: Start (true)
input ENUM_TRADE_COMMAND InpTradeCommandY1  = close_buys;        // Trade command: (BuyBuffer Indicators)
input ENUM_TRADE_COMMAND InpTradeCommandU1  = open_buy;          // Trade command: (SellBuffer Indicators)
input string   t5="----- Trailing Line: 1   -----";              //
input string   InpObjUpName                 = "ZTOP";            // Obj: TOP (Horizontal Line)
input int      InpStep1                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpTradeCommand    = Line2_sells;       // Obj:  command:
input string   InpObjDownName               = "ZLOWER";          // Obj: LOWER (Horizontal Line)
input int      InpStep2                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InTradeCommand     = Line1_buys;        // Obj:  command:
input ushort   InpObjTrailingStop           = 0;                 // Obj: Trailing Stop (distance from price to object, in pips)
input ushort   InpObjTrailingStep           = 5;                 // Obj: Trailing Step, in pips (1.00045-1.00055=1 pips)
input string   t6="----- Trailing Line: 2   -----";              //
input string   InpObjUpNameG                = "POT";             // Obj: TOP (Horizontal Line)
input int      InpStep3                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpTradeCommandG   = Line2_sells;       // Obj:  command:
input string   InpObjDownNameG              = "REWOL";           // Obj: LOWER (Horizontal Line)
input int      InpStep4                     = 0;                 // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InTradeCommandG    = Line1_buys;        // Obj:  command:
input ushort   InpObjTrailingStopG          = 0;                 // Obj: Trailing Stop (distance from price to object, in pips)
input ushort   InpObjTrailingStepG          = 5;                 // Obj: Trailing Step, in pips (1.00045-1.00055=1 pips)
input string   t7="----- ChartIndicatorAdd  -----";              // : Работа с Trailing Line: 2
input bool     InpChartInd                  = false;             // Avto Line Chart Indicators
input string   InpIndiL                     = "AVERAGE 0";       // Line name (ChartIndicatorAdd)
input int      InpStep5                     = 15;                // Obj: Шаг сетки, пунктов("0" -> false)
input string   InpIndi_name                 = "Имя Индикатора";  // INDICATOR_SHORTNAME
input int      InpChart                     = 0;                 // номер подокна
input datetime InpMonday_1                  = D'1970.01.01';     // Indicators(use only HH::MM)(00::00->off)
input string   t8="----- Indicator Delete   -----";              //
input string   Inpshort_name_1              = "Indicator 2";     // INDICATOR_SHORTNAME 2
input bool     Inpres                       = false;             // Delete All Indicators
input string   t9="----- Button:            -----";              //
input ENUM_TRADE_COMMAND InpTradeCommandBut = Line2_Line2;       // Obj(BUY):  command:Button: BUY
input ENUM_TRADE_COMMAND InTradeCommandBut  = Line1_Line1;       // Obj(SELL):  command:Button: SELL
input int      TrailingStop_STOP_LEVEL      = 36;                // Button: Trailing Stop LEVEL
input string   t10="---- Line name: 1       -----";              //
input string   InpNameR                     = "LineR";           // Line name (Horizontal Line or Trend Line)
input ENUM_TRADE_COMMAND InpTradeCommandR   = open_buy;          // Trade command:
input string   t11="---- Line name: 2       -----";              //
input string   InpNameS                     = "LineS";           // Line name (Horizontal Line or Trend Line)
input ENUM_TRADE_COMMAND InpTradeCommandS   = open_sell;         // Trade command:
input string   t12="---- CalendarValueLast 1-----";              //
input datetime HoursFrom                    = D'1970.01.01';     // 1 Время старт Сигнал Календаря
input datetime HoursTo                      = D'1970.01.01';     // Время стоп Сигнал Календаря
input string   c13="---- CalendarValueLast 2-----";              //
input datetime HoursFrom1                   = D'1970.01.01';     // 2 Время старт Сигнал Календаря
input datetime HoursTo1                     = D'1970.01.01';     // Время стоп Сигнал Календаря
input string   v14="---- CalendarValueLast 3-----";              //
input datetime HoursFrom2                   = D'1970.01.01';     // 3 Время старт Сигнал Календаря
input datetime HoursTo2                     = D'1970.01.01';     // Время стоп Сигнал Календаря
input bool     InpCalend                    = false;             // Double (Horizontal Line or Trend Line)
input string   InpSelldar                   = "Buydar";          // Line name (Horizontal Line or Trend Line)
input int      InpStep7                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpCalendCommandS  = open_sell;         // Trade command:
input string   InpBuydar                    = "Selldar";         // Line name (Horizontal Line or Trend Line)
input int      InpStep6                     = 30;                // Obj: Шаг сетки, пунктов("0" -> false)
input ENUM_TRADE_COMMAND InpCalendCommandB  = open_buy;          // Trade command:
input string   t15="---- Revers Buy><Sell   -----";              //
input bool     ObjRevers                    = false;             //  Revers
//+------------------------------------------------------------------+

------------------------------------------

Fonctionne avec l'Intelligence Humaine - mais vous pouvez vous adapter, et l'Intelligence Artificielle avec l'Indicateur.

--- Dans mon esprit, l'Indicateur est l'Intelligence Artificielle créée.

Dossiers :
 
Alexsandr San:

Pas besoin de me remercier ! Utilisez-le pour votre santé !

---------------------------------------------------

cette version a été améliorée - elle peut fonctionner à la fois pour les points et les devises

Les stops et les profits sur les achats et les ventes peuvent être calculés en devises et en pips.

cette version supprime également les boutons lorsqu'il y a des postes ouverts. - Et restaure les boutons lorsqu'il n'y a pas de position.

Dossiers :