|
AmiSite.ru
Форум по Ами |
Автор |
Сообщение |
Sergg
Зарегистрирован: 04.03.2012
Сообщения: 24
|
В роботе используется данный индикатор чтобы не входить в шорт (и держать лонг дальше) если цена падает на небольших объемах (AccDist уменьшается не более чем на 2-3% от максимума за последние N баров). Но возникла проблема - с каждым новым днем начальные бары с которых начинался расчет аккумуляции удаляются (Quik дает только 3000 последних баров) и следовательно значения данного индикатора переодически изменяются. Поэтому проведя тест на истории сегодня можно получить что оптимальное значение уменьшения AccDist допустим 5% (при этом кол-во сделок допустим 50). А через пару дней значения фильтра в 5% дает нам уже другое кол-во сделок (допустим 45), т.к начальное значение индикатора изменилось и в некоторых сделках изменение AccDist было уже только 4.8% или 4.4% и поэтому сделки не прошли. Т.е сделки то появляются, то исчезают (заглядывания в будущее в роботе нету).
Поэтому мучает вопрос - как сделать так чтобы значения данного индикатора не менялись в прошлом.
Была мысль вычислять накопления с какой-то конкретной даты. Т.е есть 3000 баров от Quik, но вычислять значения данного индикатора только начиная с 1500-го например и тем самым у нас есть ~ полгода не изменного в прошлом значения индикатора. Но не знаю как это сделать.
код Ами примерно такой:
//per_volume= Optimize("Период от Hi-Lo Vol", 1, 1, 30, 1);
per_volume=4;
//filtr_volume=Optimize("Фильтр Vol", 1, 1, 7, 0.2);
filtr_volume=5.4;
//Вычисляем накопление объемов
hi_vol = HHV(AccDist(),per_volume); //Максимум накопления за последние N-периодов
vol_short=(ref(hi_vol,-1)-ref(AccDist(),-1))/ref(AccDist(),-1)*100; //Изменение накопления в процентах от максимума
vol_short=(int(vol_short*10))/10;
Buy = какой-то код;
Sell = какой-то код and vol_short>filtr_volume;
Short = какой-то код and vol_short>filtr_volume;
Cover = какой-то код; |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Была мысль вычислять накопления с какой-то конкретной даты. Т.е есть 3000 баров от Quik, но вычислять значения данного индикатора только начиная с 1500-го например и тем самым у нас есть ~ полгода не изменного в прошлом значения индикатора. Но не знаю как это сделать.
|
При тесте задать не всю историю, а с даты или n последних баров. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
| |