Функции для реальной торговли и для реальных счетов. Часть №2

Этот топик для всех желающих. Желающих чего? Развиваться совместно. Учиться элементарным вещам, позволяющим самим, без особого знания програмировани, научиться добавлять свои дополнительные хотелки в уже готовые советники для проверки своих идеек.

Главная же цель этого топика научиться заменять те функции, что пишут нам уважаемые програмисты в советниках «для проверки» наших идей,
на функции, позволяющие торговать не только в тестере, но и в реале. Маленький такой счетик на 1000 центов — и изучайте, тренеруйтесь себе
на практике. На реальной практике. 1-4 месяца и вы уже знаете: доверите вы этому советнику свои большие бабки, или… — хрен ему. Идем дальше.
  • 0
  • Просмотров: 46
  • 2 февраля 2025, 10:35
  • kvashnin007
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

18 января 2025

Брокер для ваших роботов, 15 лет на рынке

Комментарии (7)

комментарий был удален 2025-02-02 12:39:28 kvashnin007

комментарий был удален 2025-02-02 12:39:34 kvashnin007

комментарий был удален 2025-02-02 12:39:44 kvashnin007

+
0
avatar

  15  OSS5 Сообщений: 150

  • 2 февраля 2025, 11:48
+
0
Ого. И как это?

Спасибо
avatar

  7  kvashnin007 Автор Сообщений: 660 - Андрей

  • 2 февраля 2025, 12:38
+
0
Итого мы имеем советник, над которым поработаем с целью получить рабочий советник для торговли на рынке.
avatar

  7  kvashnin007 Автор Сообщений: 660 - Андрей

  • 2 февраля 2025, 12:41
+
0
Начнем! Что в начале советника?
Внешние и глобальные переменные.

Вообще, я переменные стараюсь называть понятными именами. Потом легче разбираться с кодом. Вам когда нибудь попадались декомпилированные советники? Кто видел — поймет. Это АКСИОМА.

Глобальные переменные (как и локальные) тоже обзывать надо понятно.

И так, что мы имеем:

//************************************************************************************************/
enum type 
  {
   reversP  =1,     // Revers Part
   revers   =2,     // Revers
   speed    =3,     // Speed
   vsa      =4,     // VSA
   volume   =5      // Volume
  };
enum ENUM_ST
  {
   Awerage      = 0,  // All close All
   StartClose   = 1,  // Start close Start
   Comby        = 2   // Start close All
  };
//************************************************************************************************/
input ENUM_ST      iCloseOrder         = Awerage;  // Type close orders
input int          StopLoss            = 20;       // Stop Loss (in pips)
input int          iTakeProfit         = 300;      // Take Profit (in pips)
input bool         MM                  = false;    // Мани Менеджмент
input double       Risk                = 0.5;      // Риск на сделку % в процентах от свободной маржи.
input double       iStartLots          = 0.01;     // Start lot
input double       CoeffLots           = 2.0;      // Увеличение лота
input double       iMaximalLots        = 2.56;     // Maximal Lots 
input int          iPointOrderStep     = 390;      // Point order step (in pips)
input int          iMinimalProfit      = 70;       // Minimal profit for close grid (in pips)
input int          iMagicNumber        = 227;      // Magic Number (in number)
input int          iSlippage           = 30;       // Slippage (in pips)
//---
input int          period              = 6;        //Period
input int          t3_period           = 1;
input double       B                   = 0.7;
input type         t                   = revers;   //Type Signals
double slopeBuffer[];

double e1,e2,e3,e4,e5,e6,
       c1,c2,c3,c4,
       n,
       w1,w2,
       b2,b3,
       t3;
double ExtUp[], ExtDn[], ExtMd[], ExtBuyArrow[], ExtSellArrow[],
       BBUp[], BBDn[], BBMd[], 
       priceUp[], priceDn[], signalUp[], signalDn[];
//************************************************************************************************/


Весело? Не очень.
Начну с enum type. Пытался понаделать разные примочки к основному коду. Положительного эффекта с гулькин… нос. А вот оптимизация зависает от слова совсем.

Предлагаю убрать. Еще немного мусор почистить.

В итоге получится следующая картинка. На прямую заменить строки не получится. Там еще в основном коде поменять кое чего надо. Так что ссылку на версию 1.1 дам. Если получится.

//************************************************************************************************/
enum ENUM_ST
  {
   Awerage      = 0,  // All close All
   StartClose   = 1,  // Start close Start
   Comby        = 2   // Start close All
  };
//************************************************************************************************/
input ENUM_ST      iCloseOrder         = Awerage;  // Type close orders
input int          StopLoss            = 20;       // Stop Loss (in pips)
input int          iTakeProfit         = 300;      // Take Profit (in pips)
input bool         MM                  = false;    // Мани Менеджмент
input double       Risk                = 0.5;      // Риск на сделку % в процентах от свободной маржи.
input double       iStartLots          = 0.01;     // Start lot
input double       CoeffLots           = 2.0;      // Увеличение лота
input double       iMaximalLots        = 2.56;     // Maximal Lots 
input int          iPointOrderStep     = 390;      // Point order step (in pips)
input int          iMinimalProfit      = 70;       // Minimal profit for close grid (in pips)
input int          iMagicNumber        = 227;      // Magic Number (in number)
input int          iSlippage           = 30;       // Slippage (in pips)
//---
input int          period              = 6;        //Period
input int          t3_period           = 1;
input double       B                   = 0.7;
//---
double slopeBuffer[];
double e1,e2,e3,e4,e5,e6,
       c1,c2,c3,c4,
       n,
       w1,w2,
       b2,b3,
       t3;
double ExtUp[], ExtDn[], ExtMd[], ExtBuyArrow[], ExtSellArrow[],
       BBUp[], BBDn[], BBMd[], 
       priceUp[], priceDn[], signalUp[], signalDn[];
//************************************************************************************************/
//*                                                                                              */
//************************************************************************************************/
avatar

  7  kvashnin007 Автор Сообщений: 660 - Андрей

  • 2 февраля 2025, 13:21

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий