Как защититься от копирования длительных сделок из тестера - страница 2

 
George Merts:

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

ЗЫ: если для четвёрки, то читать файл истории по которому запускается сов, искать последний бар(нулевой) и останавливать тест за n баров до последнего

 

но и тут хитрый юзер(с уровнем познаний терминала выше среднего) может дописать историю на N баров )

ЗЫ: да, самое простое получить количество баров на графике(iBars), из времени текущего, вычитать время первого(самого левого) и когда разность будет меньше или равна n барам останавливать тест.

хотя iBars не подойдёт нужно ковыряться в файле истории.

 
Alexandr Bryzgalov:

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

Именно так. Это единственная возможность узнать реальное время компьютера из тестера. Так я и делаю.

Но, юзер может перевести время, как вы верно сказали.

Alexandr Bryzgalov:

ЗЫ: если для четвёрки, то читать файл истории по которому запускается сов, искать последний бар(нулевой) и останавливать тест за n баров до последнего

Не годится. В тестере стратегий история дается не вся, а по тикам, и "остановить тестер за несколько баров" невозможно. Открытие же файла истории - это вариант с самописной DLL, которого хотелось бы избежать.  Если с DLL - то, как мне кажется, запрос времени из интернета - самое надежное.
 
Dmitiry Ananiev:
а какие настройки надо вставить и где ? что-то nы заморочился совсем. TimrCurrent() время сервера. В тестере - это время прихода тиков по времени сервера. Сколько пишу  совов к локальному времени компьютера не разу не привязывался. 

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

Проблема, собственно, именно в том, что если эксперт работает на таймфрейме M5 и старше (особая проблема на дневках) - становится возможным запускать его на тестере стратегий и считывать последнее действие, перенося его в дрyгой терминал, и не покупать советника, пользуясь только демо-версией.

 
George Merts:
Не годится. В тестере стратегий история дается не вся, а по тикам, и "остановить тестер за несколько баров" невозможно. Открытие же файла истории - это вариант с самописной DLL, которого хотелось бы избежать.  Если с DLL - то, как мне кажется, запрос времени из интернета - самое надежное.
остановить это образно сказано, имелось ввиду что советник перестанет реагировать на сигналы.
 
Единственный вариант защищенной проверки робота, это вешать на сервере метаквотов как на чемпионатах было, висит куча продажных роботов, торгует, доступ к роботам у продавцов возможен, но все их действия фиксируются и выкладываются на всеобщее обозрение. Полез ручками фиксить позиции, поменял параметры, все все видят. Только это утопия к сожалению...
 
А узнать конечную дату теста никак нельзя?
 
Alexey Viktorov:
А узнать конечную дату теста никак нельзя?
Даже если бы и можно было, то это все равно ничего не дает. Задача - узнать реальное текущее время из тестера без использования API.
 
Alexandr Bryzgalov:
 имелось ввиду что советник перестанет реагировать на сигналы.
Да, я понял. Но опять же, в тестере стратегий - вы получаете тики последовательно, и не знаете, когда у вас будет последний тик.
 
Игорь Герасько:
Даже если бы и можно было, то это все равно ничего не дает. Задача - узнать реальное текущее время из тестера без использования API.

Как раз если можно было бы - все решилось.

Реальное текущее время из тестера узнается с помощью файловой операции. Это, конечно, изврат, но он реально работает.

Если у кого есть какие идеи по поводу окончания времени тестирования из тестера - делитесь.