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



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

СообщениеДобавлено: Пт Окт 28, 2011 1:45 pm Ответить с цитатой Вернуться к началу

Добрый день!
Вопрос к специалистам.
Есть задача динамически управлять размером позиции в зависимости от волатильности рынка - чтобы был всегда фиксированный риск на сделку.
Что -то подобное обсуждалось на ветке http://www.amisite.ru/phpBB2/viewtopic.php?t=1172&highlight=setpositionsize
При этом должно быть ограничение на некий, максимальный, процент.
Пробовал реализовать следующим образом, но что-то получается не то:
Buy = ...;
Sell = ...;
AccontMargin=...; // здесь рассчитывается процент на который необходимо покупать
SetPositionSize(AccontMargin, spsPercentOfEquity);// здесь всё без проблем
//////////////////////А вот здесь пробую вставить ограничение/////////////////////////////////
IIf(AccontMargin>50 ,SetPositionSize(50, spsPercentOfEquity),SetPositionSize(AccontMargin, spsPercentOfEquity)); // получается полная ерунда

Заранее спасибо за помощь.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Пт Окт 28, 2011 2:02 pm Ответить с цитатой Вернуться к началу

Код:
AccontMargin = ...
AccontMargin = IIf(AccontMargin > 50, 50, AccontMargin);
SetPositionSize(AccontMargin, spsPercentOfEquity);

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



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

СообщениеДобавлено: Пт Окт 28, 2011 2:57 pm Ответить с цитатой Вернуться к началу

Огромное спасибо.
И еще маленький подвопросик: каким образом можно прикрутить оптимизацию на данное ограничение:

Period1 = Optimize("Period1", 5, 1, 100, 1);

AccontMargin=...;

AccontMargin = IIf(AccontMargin > Period1, Period1, AccontMargin);// и опять ерунда

SetPositionSize(AccontMargin, spsPercentOfEquity);


Последний раз редактировалось: denis_ (Пт Окт 28, 2011 3:15 pm), всего редактировалось 3 раз(а)
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen