Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Вопрос по индикатору AccDist (Accumulation Distribution) Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
Sergg



Зарегистрирован: 04.03.2012
Сообщения: 24

СообщениеДобавлено: Сб Апр 21, 2012 11:18 am Ответить с цитатой Вернуться к началу

В роботе используется данный индикатор чтобы не входить в шорт (и держать лонг дальше) если цена падает на небольших объемах (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

СообщениеДобавлено: Сб Апр 21, 2012 8:40 pm Ответить с цитатой Вернуться к началу

Цитата:

Была мысль вычислять накопления с какой-то конкретной даты. Т.е есть 3000 баров от Quik, но вычислять значения данного индикатора только начиная с 1500-го например и тем самым у нас есть ~ полгода не изменного в прошлом значения индикатора. Но не знаю как это сделать.

При тесте задать не всю историю, а с даты или n последних баров.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen