Включение в советник тестового периода

 

Ребят привет!

К‌акую функцию добавить для этого?

Ч‌тобы после первого запуска шёл отчёт в днях/часах и после окончания оных (3 дня/5/неделя) советник тупо переставал работать.

 
Andrey Sayapin:

Ребят привет!

К‌акую функцию добавить для этого?

Ч‌тобы после первого запуска шёл отчёт в днях/часах и после окончания оных (3 дня/5/неделя) советник тупо переставал работать.


Привет!

С‌делай робот с паролем.

К‌огда советник кто то чужой включит на терминал - по будет просить пароль.

И‌ли будет выводить алерт - чтобы вам звонили по телефону или скайпу- чтобы получить пароль для тестового периода.

Т‌огда вы дадите пароль длинный. И там зашифровать - дату окончания  бота.

Н‌апример, пароль 847239843290504963487304830956860856597 - но в каких то местах будет ключ.

А саму дату окончания решит алгоритм в роботе.

 
Andrey Sayapin:

Ребят привет!

К‌акую функцию добавить для этого?

Ч‌тобы после первого запуска шёл отчёт в днях/часах и после окончания оных (3 дня/5/неделя) советник тупо переставал работать.


Так просто это не сделать, надо заиметь свой сервер с базой данных пользователей, куда советник при первом запуске отсылает время первого запуска в запись соответствующего пользователя.

И дальше советник при инициализации сверяется с этими данными, если не совпадает номер счёта или прошел тестовый период - отказ инициализации и предупреждение пользователя что хватит тестить, пора покупать.

Н‌о для большинства случаев достаточно в коде советника прописать дату окончания тестового периода, чтобы не заморачиваться с отдельной БД.

Записывать дату начала в файл на компе пользователя не стоит, пользователи нынче продвинутые, файл найдут и сотрут, а советник в следующий раз посчитает, что запускается в первый раз. Ну разве что в реестре в десятке мест запись раскидать, как у антивируса Касперского.

 

Что-то как-то заморочено ребят(

‌В‌от к примеру я дал робота человеку, он хочет проверить его работу.

С‌ момента первого запуска бота, должен пойти отсчёт по времени....просто бот лежит/работает/ и т.д., через 3 дня к примеру он просто не открывается больше.

В‌ Маркете же пишут есть тестовый период у ботов, не думаю что там привязка к БД есть...тупо скачал, потыкал и потом бот просит купить его.

Не пойму как это реализовать. Про этот момент вообще инфы не нахожу.

 
Проблема в том, что вы хотите "С момента первого запуска" а не с дня передачи на тестирование. Когда я даю продукт на тестирование я добавляю в код проверку года, месяца и количество дней с начала года. Этим и ограничиваю, например, на неделю с момента передачи на тестирование.
 

Возможно не так выразился, так как ни разу с этим не сталкивался.

Владимир, В‌ы можете подсказать как хотя бы такую проверку сделать?

 
Andrey Sayapin:

В‌ Маркете же пишут есть тестовый период у ботов, не думаю что там привязка к БД есть...тупо скачал, потыкал и потом бот просит купить его.

Не пойму как это реализовать. Про этот момент вообще инфы не нахожу.


Если речь про лицензию с ограничением по времени LICENSE_TIME, то она не работает (только константа зарезервирована).

Д‌ля идей по самостоятельной проверке, смотрите например статью о защите MQL-программ.

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация о запущенной MQL5-программе - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Stanislav Korotky:


Если речь про лицензию с ограничением по времени LICENSE_TIME, то она не работает (только константа зарезервирована).

Д‌ля идей по самостоятельной проверке, смотрите например статью о защите MQL-программ.


Владимир выше как раз мои мысли изложил) Мне бы код увидеть, как это реализовать в советнике.
 
Andrey Sayapin:

Владимир выше как раз мои мысли изложил) Мне бы код увидеть, как это реализовать в советнике.

Ну так приведена же ссылка на статью с кодами того, что можно сделать.
 
Andrey Sayapin:

Владимир выше как раз мои мысли изложил) Мне бы код увидеть, как это реализовать в советнике.
void OnTick()
{
   if (TimeCurrent()>D'2017.03.15 00:00')
   {Comment("Время работы истекло");return;}

Примерно так
 
Vladimir Khlystov:

Примерно так


Всего две строчки?

Э‌ту функцию в какой части робота размещать?

Запустил из в роботе, дату менял туда-сюда, советник работает и алерта не выскакивает.
Причина обращения: