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



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

СообщениеДобавлено: Чт Ноя 26, 2009 6:20 pm Ответить с цитатой Вернуться к началу

Доброго дня
Есть задачка попросить ами покупать в лонг после выполнения 2х условий:
1.если есть набор условий (наличие объема, время не 23 часа и прочее)
2.и если цена пробила вверх уровень, рассчитанный по формуле:
Цена закрытия в момент наступления события №1 - 1% не позже чем через 10 баров после наступления №1 события

Т.е. произошло событие на баре, мы берем от него значение закрытия, отнимаем процент и ждем 10 баров, если в течении этих 10 баров цена спустилась вниз и пробила снизу уровень "цена закрытия при событии №1 - 1%), то покупаем

Я написал

tmo=TimeNum()>=113000 AND TimeNum()<234000;
tmc=TimeNum()>=234000;

Buy1 =C>Sshort AND r!=1 AND tmo AND A3>0 AND a2;
Buy2 = IIf(Ref(Buy1,-1)!=buy1,ValueWhen(Buy1,C),0);
Buy3 = BarsSince(Buy2)<10;
Buy= Buy3 AND tmo AND Cross(C,Buy2*0.99);
BuyPrice =C;

Но не выходит каменный цветок
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Ноя 26, 2009 11:06 pm Ответить с цитатой Вернуться к началу

А если так?
Код:

tmo=TimeNum()>=113000 AND TimeNum()<234000;
tmc=TimeNum()>=234000;

Buy1 = C>Sshort AND r!=1 AND tmo AND A3>0 AND a2;
Buy2 = Ref(Buy1,-1)!= Buy1
Buy3 = Ref(Buy2, 10); // отсчитываем 10 баров от Buy2
Diap = Flip(Buy2, Buy3); // диаппазон на котором совершаем сделку
BuyLevel = ValueWhen(Buy2, C); // уровень сделки
Buy = Diap AND tmo AND Cross(C, BuyLevel*0.99);
BuyPrice = C;

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



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

СообщениеДобавлено: Пт Ноя 27, 2009 10:08 am Ответить с цитатой Вернуться к началу

000 писал(а):
А если так?
Код:

tmo=TimeNum()>=113000 AND TimeNum()<234000;
tmc=TimeNum()>=234000;

Buy1 = C>Sshort AND r!=1 AND tmo AND A3>0 AND a2;
Buy2 = Ref(Buy1,-1)!= Buy1
Buy3 = Ref(Buy2, 10); // отсчитываем 10 баров от Buy2
Diap = Flip(Buy2, Buy3); // диаппазон на котором совершаем сделку
BuyLevel = ValueWhen(Buy2, C); // уровень сделки
Buy = Diap AND tmo AND Cross(C, BuyLevel*0.99);
BuyPrice = C;


Отлично! спасибо
про Flip я как-то не подумал
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen