Шаблон для разработки советников

 

Добрый день, сообщество!

Все мы пишем советники, индикаторы, скрипты. Кто-то пишет круто, кто-то еще круче. Но как вы пишите каждую новую работу и сколько это занимает у вас времени? Используете ли вы набор своих готовых решений или ищите нужную функцию в каком-то из написанных ранее работ? Безусловно, каждый пишет как ему удобнее и, скорее всего, у многих так же есть свои шаблоны. Но почему бы нам не обменяться опытом, и, возможно, придумать что-то интересное вместе.

За некоторое время написания роботов у меня тоже собрался небольшой шаблон для разработки роботов с набором готовых решений, функций и методов. Хотел бы показать свой шаблон, на основе которого пишу своих экспертов. Надеюсь это кому-то пригодится.

Шаблон имеет набор возможностей:

  • авто-расчет лота по балансу и парам
  • авто-создание меджика
  • встроенная фильтрация входов стандартными индикаторами
  • контроль торговли при расширении спреда
  • торговля по времени и торговым сессиям
  • трейлинг, безубыток, стопы так же для ECN-счетов
  • виртуальныое открытие и управления сделками непосредственно с графика
  • логирование открытия и закрытия сделок
  • выгрузка в файл статистики торговли по дням недели, парам, отдельно по статьям
  • ... и еще десяток фишек

Прикрепил файл с полным описанием. Возможно это кого-то заинтересует и мы сможем сделать из этого полезный продукт для каждого.

Это не реклама, продукт не продается, хотел бы развивать тему шаблонов вместе.

Файлы:
EA_Template.zip  509 kb
 
Roman Starinskij:

Добрый день, сообщество!

Все мы пишем советники, индикаторы, скрипты. Кто-то пишет круто, кто-то еще круче. Но как вы пишите каждую новую работу и сколько это занимает у вас времени? Используете ли вы набор своих готовых решений или ищите нужную функцию в каком-то из написанных ранее работ? Безусловно, каждый пишет как ему удобнее и, скорее всего, у многих так же есть свои шаблоны. Но почему бы нам не обменяться опытом, и, возможно, придумать что-то интересное вместе.

За некоторое время написания роботов у меня тоже собрался небольшой шаблон для разработки роботов с набором готовых решений, функций и методов. Хотел бы показать свой шаблон, на основе которого пишу своих экспертов. Надеюсь это кому-то пригодится.

Шаблон имеет набор возможностей:

  • авто-расчет лота по балансу и парам
  • авто-создание меджика
  • встроенная фильтрация входов стандартными индикаторами
  • контроль торговли при расширении спреда
  • торговля по времени и торговым сессиям
  • трейлинг, безубыток, стопы так же для ECN-счетов
  • виртуальныое открытие и управления сделками непосредственно с графика
  • логирование открытия и закрытия сделок
  • выгрузка в файл статистики торговли по дням недели, парам, отдельно по статьям
  • ... и еще десяток фишек

Прикрепил файл с полным описанием. Возможно это кого-то заинтересует и мы сможем сделать из этого полезный продукт для каждого.

Это не реклама, продукт не продается, хотел бы развивать тему шаблонов вместе.

А где-же сам исходник для обсуждения?

 
Vitaly Muzichenko:

А где-же сам исходник для обсуждения?


Отправил в личку.

Кому-то еще прислать?

 
Roman Starinskij:

Отправил в личку.

Кому-то еще прислать?

тут выкладывайте, иначе это "голимая реклама"
 
Maxim Kuznetsov:
тут выкладывайте, иначе это "голимая реклама"

Конечно, вот шаблон.

Только он писался еще давно, старый вариант кода, большие переменные и отступы. Но работает как в описании.

Файлы:
Old_Template.mq4  228 kb
 
Вот еще iCustom
Файлы:
 
Roman Starinskij:

Конечно, вот шаблон.

Только он писался еще давно, старый вариант кода, большие переменные и отступы. Но работает как в описании.

Очередная порция знатного говнокода. Взял первое попавшее:

// НАЗВАНИЕ

string Name ()
{
   string Name_File = __FILE__;
   
   for (int I = StringLen (Name_File) - 1; I >= 0; I --)
   {
      if (StringSubstr (Name_File, I, 1) == ".")
      {
         Name_File = StringSubstr (Name_File, 0, I);
         
         break;
      }
   }
   
   return (Name_File);
}

Переделал на более простое:

string Name(void)
{
   string split[];
   StringSplit(__FILE__, '.', split);
   return split[0];
}

И так во всем.

 
Roman Starinskij:


Не делайте людям добро и они не ответят вам злом.)
 
Vasiliy Sokolov:

Очередная порция знатного говнокода. Взял первое попавшее:

Переделал на более простое:

И так во всем.

Не стреляйте в пианиста, он играет так, как умеет.)
 
khorosh:
Не делайте людям добро и они не ответят вам злом.)

Наоборот, замечание очень важное, и очень полезное, и на него нужно реагировать как "Спасибо огромное"

Вы ведь помните, как меня исправляли, иногда написанное можно укоротить и увеличить производительность кода.

У меня кстати тоже бывают такие косяки, напишешь что-то, а через время смотришь, и понимаешь что написал х.ню и начинаешь переделывать. От этого никто не застрахован, не ошибается тот, кто ничего не делает.

 
Vasiliy Sokolov:

Очередная порция знатного говнокода. Взял первое попавшее:

Переделал на более простое:

И так во всем.


ждем такой же код по смыслу от вас

например интересно пополнить свою коллекцию функциями которых у меня еще нет
Причина обращения: