Подскажите пожалуйста: можно ли после проведения тестирования на истории каким-либо способом выудить коментарий или magic номер каждой совершенной сделки, или любым другим способом идентифицировать сделки? Попробую объяснить смысл. Допустим запрограмировал несколько паттернов, прогнал советника на истории, результат, как это часто бывает - слив. Было бы интересно посмотреть, какая из фигур и в каких рыночных условиях сливает больше и чаще, а какая (если такая есть) приносит хоть какой-то профит.
Зарание спасибо за ответы.
Сделайте проще. Задавайте номер паттерна как extern параметр. Советник должен открывать позы только по этому паттерну. А, если, например, указать ноль, то он открывается по любым паттернам. Прогоняете оптимизацию по всем паттернам. Получаете суммарную картину и разбивку по паттернам.
Нужна функция "Новый ордер" наподобие "Нового бара". Функция должна иметь значение TRUE только на один тик, следующий за моментом, когда ордер открылся. Т.е. в момент изменения количества открытых ордеров в бОльшую сторону. Прошу помочь
есть такая проблема - у меня тож такое было, если советник много сделок в год совершает - возможно много данных сохраняется для вывода итогового результата или может быть индикаторные буфера память съедают
в общем видел - не знаю, терпите - для общей картины тест за 10 лет,а оптимизировать лучше по одному году и потом делать выборку оптимальных параметров
Спасибо, Игорь ! Интуитивно я так и делаю. Думал, что вдруг можно как-то и для большего периода не терять скорость ?
Гуру подскажите пожалуйста, уже весь мозг сломал, чувствую что просто должно быть, и так и так пробую... не получается...
Суть проблемы:
Пишу индикатор, ловит точки в буфера, всего должно быть 4, 2 собрал нормально, значения как положено по барам, либо нулевые либо, цена, тут все Ок, но нужны еще 2 буфера в которые нужно помещать значения таким образом: если найдено ненулевое значение для буфера 0, то проверка есть ли предыдущее ненулевое значение в буфере 0, и если оно меньше, то текущее значение записывается в буфер 2. и соответственно для буфера 3 и 1 только там проверка на большее предыдущее значение, хочется изящного решения чтоб это "на лету" вычислялось, а не тупо переборами и здоровенными циклами, просто это мой первый индикатор, советники и скрипты писал уже, а вот с индикатором и его буферами запутался...
...................
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
Гуру подскажите пожалуйста, уже весь мозг сломал, чувствую что просто должно быть, и так и так пробую... не получается...
Суть проблемы:
Пишу индикатор, ловит точки в буфера, всего должно быть 4, 2 собрал нормально, значения как положено по барам, либо нулевые либо, цена, тут все Ок, но нужны еще 2 буфера в которые нужно помещать значения таким образом: если найдено ненулевое значение для буфера 0, то проверка есть ли предыдущее ненулевое значение в буфере 0, и если оно меньше, то текущее значение записывается в буфер 2. и соответственно для буфера 3 и 1 только там проверка на большее предыдущее значение, хочется изящного решения чтоб это "на лету" вычислялось, а не тупо переборами и здоровенными циклами, просто это мой первый индикатор, советники и скрипты писал уже, а вот с индикатором и его буферами запутался...
...................
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
Кто-нибудь подскажет в чём засада???
пока не будет самого индикатора - никто не подскажет
Возможно. Если конечно ДЦ это поддерживает.
Только стоит не забывать что в тестере можно открывать позиции по текущему инструменту, и есть ряд ограничений по другим инструментам
А этот ряд грнаничений распрострооняется на торговю в онлайне? Если нет, то все грустно. Код ничего не открывает:
Всем привет.
Подскажите пожалуйста: можно ли после проведения тестирования на истории каким-либо способом выудить коментарий или magic номер каждой совершенной сделки, или любым другим способом идентифицировать сделки? Попробую объяснить смысл. Допустим запрограмировал несколько паттернов, прогнал советника на истории, результат, как это часто бывает - слив. Было бы интересно посмотреть, какая из фигур и в каких рыночных условиях сливает больше и чаще, а какая (если такая есть) приносит хоть какой-то профит.
Зарание спасибо за ответы.
перебор исторических ордеров есть?
есть такая проблема - у меня тож такое было, если советник много сделок в год совершает - возможно много данных сохраняется для вывода итогового результата или может быть индикаторные буфера память съедают
в общем видел - не знаю, терпите - для общей картины тест за 10 лет,а оптимизировать лучше по одному году и потом делать выборку оптимальных параметров
Гуру подскажите пожалуйста, уже весь мозг сломал, чувствую что просто должно быть, и так и так пробую... не получается...
Суть проблемы:
Пишу индикатор, ловит точки в буфера, всего должно быть 4, 2 собрал нормально, значения как положено по барам, либо нулевые либо, цена, тут все Ок, но нужны еще 2 буфера в которые нужно помещать значения таким образом: если найдено ненулевое значение для буфера 0, то проверка есть ли предыдущее ненулевое значение в буфере 0, и если оно меньше, то текущее значение записывается в буфер 2. и соответственно для буфера 3 и 1 только там проверка на большее предыдущее значение, хочется изящного решения чтоб это "на лету" вычислялось, а не тупо переборами и здоровенными циклами, просто это мой первый индикатор, советники и скрипты писал уже, а вот с индикатором и его буферами запутался...
...................
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
while(i>1) // Цикл по непосчитанным барам
{
if (..............) // тут все работает
{
Buf_0[i]=High[i];
{вот тут хочется вычислить Buf_2[i] }
}
if (..............) //тут тоже все работает
{
Buf_1[i]=Low[i];
{а тут хочется вычислить Buf_3[i] }
}
i--;
// Расчёт индекса следующего бара
}
//--------------------------------------------------------------------
return; // Выход из спец. ф-ии start()
}
//--------------------------------------------------------------------
Гуру подскажите пожалуйста, уже весь мозг сломал, чувствую что просто должно быть, и так и так пробую... не получается...
Суть проблемы:
Пишу индикатор, ловит точки в буфера, всего должно быть 4, 2 собрал нормально, значения как положено по барам, либо нулевые либо, цена, тут все Ок, но нужны еще 2 буфера в которые нужно помещать значения таким образом: если найдено ненулевое значение для буфера 0, то проверка есть ли предыдущее ненулевое значение в буфере 0, и если оно меньше, то текущее значение записывается в буфер 2. и соответственно для буфера 3 и 1 только там проверка на большее предыдущее значение, хочется изящного решения чтоб это "на лету" вычислялось, а не тупо переборами и здоровенными циклами, просто это мой первый индикатор, советники и скрипты писал уже, а вот с индикатором и его буферами запутался...
...................
Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
while(i>1) // Цикл по непосчитанным барам
{
if (..............) // тут все работает
{
Buf_0[i]=High[i];
{вот тут хочется вычислить Buf_2[i] }
}
if (..............) //тут тоже все работает
{
Buf_1[i]=Low[i];
{а тут хочется вычислить Buf_3[i] }
}
i--;
// Расчёт индекса следующего бара
}
//--------------------------------------------------------------------
return; // Выход из спец. ф-ии start()
}
//--------------------------------------------------------------------
Что чаще происходит - бай или селл? Имеется в виду глобально.