так вот я и не понимаю!, в индюке должна быть заведена определенная переменная или мне нужно вписать в return(??СЮДА??), потому как куда бы не положил это значение iCustom() возвращает 0.
Ворос по тестеру стратегий: при тестирование в журнале тестера нет никаких результатов с записями, в журнале терминала записей об ошибках тоже нет.....при окончании полосы загрузки, в тестере советника, появляется противный писк .Советник лежит в папке experts все галочки поставлены сто сделать помогите плз?
возможно не закачена история котировок или параметры советника настроены так что советник не совершает сделок
naked: так вот я и не понимаю!, в индюке должна быть заведена определенная переменная или мне нужно вписать в return(??СЮДА??), потому как куда бы не положил это значение iCustom() возвращает 0.
смотря какой индюк. если значения 1 0 или -1 запоминаются индикаторным массивом то ничего в советнике менять не нужно. а если индюк не использует буфера то тогда iCustom() не поможет. тут уже нужно использовать для обмена информацией глобальные переменные, в таком случае индюк должен висеть вместе с советником
В советнике проверять - закрыт ли ордер по стопу. И, если да, то менять значение вашего флага.
Можете для определения закрытия по стопу последней закрытой позы воспользоваться готовой ф-цией Игоря Кима.
Ну, или уж сами сделайте. В любом случае - вам для начала хорошим примером будет:
Приведенную Вами функции не пробовал включать, но попробовал изменить флаг другим, более простым способом.
В цикле, который стоит значительно выше функции открытия ордеров (он проверяет далее по коду необходимость закрытия своих ордеров). Здесь OP - метка выставляемого ордера (мой флаг):
for(i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) {OP=0; break;// если ордер номер i не существует, прекращаем перебор }
....
По идее, если причина была бы в значении флага, вопрос должен был быть закрыт. Но тестер открытие дальнейших ордеров после пробоя стопа все равно не производит((
И еще: при тестировании тестер выдает ошибку значения 1. Стоит ли обращать на нее особое внимание?
Приведенную Вами функции не пробовал включать, но попробовал изменить флаг другим, более простым способом.
В цикле, который стоит значительно выше функции открытия ордеров (он проверяет далее по коду необходимость закрытия своих ордеров). Здесь OP - метка выставляемого ордера (мой флаг):
for(i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) {OP=0; break;// если ордер номер i не существует, прекращаем перебор }
....
По идее, если причина была бы в значении флага, вопрос должен был быть закрыт. Но тестер открытие дальнейших ордеров после пробоя стопа все равно не производит((
И еще: при тестировании тестер выдает ошибку значения 1. Стоит ли обращать на нее особое внимание?
Тут у вас странная какая-то конструкция. Вы делаете стандартный цикл перебора ордеров терминала. От нуля до OrdersTotal() -1. А потом уже в цикле проверяете полное отсутствие ордеров в терминале. Почему бы тикет ордера не проверять? Или магик? Да и флаг ваш почему-то =0. А почему не false? Хотя, хозяин - барин... Ваша логика - вам её и разбирать... :)
Здравствуйте, у меня вопрос. какое значение возвращает iCustom() из индикатора?
то есть у меня есть индикатор, в котором есть расчет в итоге которого должно получиться 1 или 0 или -1
и советник в котором вызывается iCustom().
так вот в индикаторе не пойму куда поставить расчетное значение чтобы при вызове я получил его в советнике.
Здравствуйте, у меня вопрос. какое значение возвращает iCustom() из индикатора?
то есть у меня есть индикатор, в котором есть расчет в итоге которого должно получиться 1 или 0 или -1
и советник в котором вызывается iCustom().
так вот в индикаторе не пойму куда поставить расчетное значение чтобы при вызове я получил его в советнике.
здравствуйте!
Ворос по тестеру стратегий: при тестирование в журнале тестера нет никаких результатов с записями, в журнале терминала записей об ошибках тоже нет.....при окончании полосы загрузки, в тестере советника, появляется противный писк .Советник лежит в папке experts все галочки поставлены сто сделать помогите плз?
так вот я и не понимаю!, в индюке должна быть заведена определенная переменная или мне нужно вписать в return(??СЮДА??), потому как куда бы не положил это значение iCustom() возвращает 0.
А это чё правда что ли,что советник может тестироваться,но не будет работать на демо или реале?
если да,мне чё надо полностью советник перекодировать чтобы заработал на реале?
и вооще на фига тогда функции рубят для версии тестирования???
но если это правда,то это полный ...... даже незнаю как написать!!!!!!! я наверно перечитывал
учебник раз 10 а в документации я не спорю все граматно и красиво,только я пока недопонимаю
что там вообще пишут!!!!
В советнике проверять - закрыт ли ордер по стопу. И, если да, то менять значение вашего флага.
Можете для определения закрытия по стопу последней закрытой позы воспользоваться готовой ф-цией Игоря Кима.
Ну, или уж сами сделайте. В любом случае - вам для начала хорошим примером будет:
Приведенную Вами функции не пробовал включать, но попробовал изменить флаг другим, более простым способом.
В цикле, который стоит значительно выше функции открытия ордеров (он проверяет далее по коду необходимость закрытия своих ордеров). Здесь OP - метка выставляемого ордера (мой флаг):
for(i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)
{OP=0;
break;// если ордер номер i не существует, прекращаем перебор
}
....
По идее, если причина была бы в значении флага, вопрос должен был быть закрыт. Но тестер открытие дальнейших ордеров после пробоя стопа все равно не производит((
И еще: при тестировании тестер выдает ошибку значения 1. Стоит ли обращать на нее особое внимание?
Приведенную Вами функции не пробовал включать, но попробовал изменить флаг другим, более простым способом.
В цикле, который стоит значительно выше функции открытия ордеров (он проверяет далее по коду необходимость закрытия своих ордеров). Здесь OP - метка выставляемого ордера (мой флаг):
for(i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)
{OP=0;
break;// если ордер номер i не существует, прекращаем перебор
}
....
По идее, если причина была бы в значении флага, вопрос должен был быть закрыт. Но тестер открытие дальнейших ордеров после пробоя стопа все равно не производит((
И еще: при тестировании тестер выдает ошибку значения 1. Стоит ли обращать на нее особое внимание?