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



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

СообщениеДобавлено: Чт Янв 24, 2013 5:48 pm Ответить с цитатой Вернуться к началу

Тут по ходу ещё один вопрос возник с определением индекса бара. Вот такой код:
n=BarIndex();
b=SelectedValue(n);
printf(NumToStr(b));

Почему-то выдаёт величину индекса порядка 150-300. Хотя по моим расчётам величина индекса должна быть порядка 25000, если отсчёт вести от самого первого бара. Что здесь принимается за точку отсчёта? И зачем отсчёт вести не от самого первого бара, а от какого-то другого?

И ещё одна проблема. При повторном кликании мышки по одному и тому же бару, почему-то этот код даёт индекс последнего видимого бара. Можно ли как-нибудь это отключить? Т.е. сделать так, чтобы при повторном нажатии выдавался тот же самый индекс, где стоит курсор. Я облазил все меню и ничего не нашёл.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Янв 24, 2013 6:08 pm Ответить с цитатой Вернуться к началу

Ами, для ускорения расчетов, использует так называемый квикАФЛ. Считает не весь массив баров, а только те, которые влияют на отображение линий на экране.
Можно его заставить считать все бары. Для этого в начало кода вставь строку
Код:
SetBarsRequired(sbrAll, sbrAll);

Тогда твой расчет будет верным и одинаковым.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Swell



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

СообщениеДобавлено: Чт Янв 24, 2013 9:38 pm Ответить с цитатой Вернуться к началу

Олег, спасибо. Очень ценная информация. А то при прокрутке бары меняют свой индекс и получается путаница. Методом проб и ошибок я определил, что если в конце кода поставить такой оператор: e=equity(), то тоже начинает считать все бары. Правда я не могу понять, почему так. И почему именно в конце кода...
Но видимо то, что ты предложил, более правильно.
Посмотреть профиль Отправить личное сообщение
Shara



Зарегистрирован: 11.02.2013
Сообщения: 30
Откуда: местный

СообщениеДобавлено: Вт Фев 12, 2013 7:23 pm Ответить с цитатой Вернуться к началу

Всем привет. Подскажите начинающему плиз. Для теста простых систем на 1-2 индикатора, существует универсальный образец(или трафарет) кода для Ами? Что бы в нем можно было бы менять блоками разные параметры. Например, меняешь блок на вход по одному индикатору, на вход по другому индикатору. Так же на выход, и другое. Если это есть, где можно посмотреть, только нужно с коментариями внутри кода. Нужно для понимания структуры кода и языка программы. Что бы было понятно про каждую строчку кода. И в каком порядке, куда писать. Сам кое как понял, что написал.
Книгу про AFL просмотрел, ни чего не понял, нужно дальше вникать.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Фев 12, 2013 10:43 pm Ответить с цитатой Вернуться к началу

Могу посоветовать посмотреть в хелпере тему "Back-testing your trading ideas". Не по русски конечно, но достаточно понятно.
И еще в Ами есть такой инструмент AFL code wizard Он в меню Analysis. Он тоже может немного помочь разобраться....

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Shara



Зарегистрирован: 11.02.2013
Сообщения: 30
Откуда: местный

СообщениеДобавлено: Ср Фев 13, 2013 11:10 am Ответить с цитатой Вернуться к началу

А у Вас нет простого кода с коментариями и описанием самой стратегии?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Фев 13, 2013 12:10 pm Ответить с цитатой Вернуться к началу

Это не пойдет?

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Shara



Зарегистрирован: 11.02.2013
Сообщения: 30
Откуда: местный

СообщениеДобавлено: Ср Фев 13, 2013 6:22 pm Ответить с цитатой Вернуться к началу

Спасибо, вроде все описано. Попробую поучить.
Посмотреть профиль Отправить личное сообщение
Shara



Зарегистрирован: 11.02.2013
Сообщения: 30
Откуда: местный

СообщениеДобавлено: Ср Фев 13, 2013 6:52 pm Ответить с цитатой Вернуться к началу

Скажите, вот нашел такой код, как образец(или трафарет) подойдет?

KomBir=2; //комиссия биржи за круг
KomBro=2; //комиссия брокера за круг
prosk=50; //Проскальзывание
SetPositionSize(1,4); //Торгуемое количество лотов
SetTradeDelays( 0, 0, 0, 0 ); //Задержка торгов
SetOption("InitialEquity", 100000); //Начальный депозит
SetOption("AllowSameBarExit", True); //Запрет выхода на баре входа
SetOption("ActivateStopsImmediately", True); //Немедленная активация стопов
SetOption("AllowPositionShrinking", False);
//Разрешить окрывать позицию размером меньше заданного (при недостатке средств)
SetOption("FuturesMode", True); //Режим маржинальной торговли
SetOption("CommissionMode", 2); //Режим комиссии
SetOption("CommissionAmount",(KomBir+KomBro)/2); //Величина комиссии
Buy=; //Правила покупки
Short=; //Правила продажи
BuyPrice=prosk+O/С/H/L; //Учитываем проскальзывание при покупке
ShortPrice=-prosk+O/С/H/L; //Учитываем проскальзывание при продаже

//среди O/С/H/L выберите нужное значение

Sell=; //Правила закрытия длинной позиции
Cover=; //Правила закрытия короткой позиции
SellPrice=-prosk+O/С/H/L; //Учитываем проскальзывание при продаже
CoverPrice=prosk+O/С/H/L; //Учитываем проскальзывание при покупке

==================================

Может еще кому поможет в освоении Ами.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Фев 13, 2013 11:38 pm Ответить с цитатой Вернуться к началу

В общем пойдет.
Только.
Если у тебя
Немедленная активация стопов, то входить по Close не следует. Тестер проверить H/L на баре входа на предмет срабатывания стопов, а стоп там сработать не мог, т.к. вход был в самом конце бара.
и не стоить в ценах входа (BuyPrice и ShortPrice) писать H и L. Невозможно войти на хае или лое.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Shara



Зарегистрирован: 11.02.2013
Сообщения: 30
Откуда: местный

СообщениеДобавлено: Чт Фев 14, 2013 7:18 pm Ответить с цитатой Вернуться к началу

А как правильно нужно? не напишете для акций? и вроде это для фьючерса шаблон.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Фев 14, 2013 9:39 pm Ответить с цитатой Вернуться к началу

Нет принципиальной разницы между торговлей бумаг и производных.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
zyanov



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

СообщениеДобавлено: Вс Фев 17, 2013 12:05 am Ответить с цитатой Вернуться к началу

Подскажите как создать подобие RSIa только для MACD? Надо что то типа MACDa( array, fast,slow).
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вс Фев 17, 2013 11:05 am Ответить с цитатой Вернуться к началу

Я не понял, что именно надо.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Swell



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

СообщениеДобавлено: Ср Фев 27, 2013 4:37 pm Ответить с цитатой Вернуться к началу

Здравствуйте.
Никто не подскажет, есть какая-нибудь функция или способ прочитать из программы верхнее и нижнее значение видимого диапазона по оси Y?
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen