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


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

СообщениеДобавлено: Вс Июл 19, 2015 1:41 am Ответить с цитатой Вернуться к началу

Уровень3 = IIf((SAR-Уровень1)<=200), Уровень2, Уровню1)
Входим по уровню3

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



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

СообщениеДобавлено: Вт Июл 21, 2015 5:57 pm Ответить с цитатой Вернуться к началу

Да,спасибо, понял. Никак не соображу еще вот в случае как на картинке. Входить в позицию по пересечению параболика и ЕМА, но при этом цена не перескакивает параболик. В квике делал такое через переменную. По умолчанию переменная равна 0. Если цена перескочила параболик, то переменная становится 1. Как только происходит пересечение средней и параболика, проверяем, чтобы переменная оставалась в 1, тогда входим в позицию. При выходе из позиции переменную снова обнуляем.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Июл 21, 2015 7:42 pm Ответить с цитатой Вернуться к началу

Я так и не понял, когда входим?

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



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

СообщениеДобавлено: Вт Июл 21, 2015 9:03 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Я так и не понял, когда входим?

Входим,когда ema пересекает sar. Но при этом в момент пересечения sar и ema цена не перескакивает пароболик. На картинке это же видно.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Июл 21, 2015 9:50 pm Ответить с цитатой Вернуться к началу

Типа так чтоли?
Код:

Parab = SAR( 0.02, 0.2 );
SMA = MA(C, 20);
direction = Flip(Cross(C, Parab), Cross(Parab, C));

Buy = direction == 1 AND ref(direction, -1) == 1 AND Cross(Parab, SMA);
Short = direction == 0 AND ref(direction, -1) == 0 AND Cross(SMA, Parab);

Plot(C, "", colorBlack, styleCandle);
Plot(Parab, "parab", colorRed);
Plot(SMA, "SMA", colorBlue);

PlotShapes(Buy*shapeUpArrow, colorGreen, 0, L);
PlotShapes(Short*shapeDownArrow, colorRed, 0, H);

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



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

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

Спасибо.Только входы наоборот. Попутно хотел спросить, если тестируем реверсную стратегию, то как выходить по окончании дневной сессии в 18-45. Вот в этом случае, например:
Код:

...
TradeTime = TimeNum() >= 100500 AND TimeNum() <= 184400;
Short =Sell= direction == 1 AND Ref(direction, -1) == 1 AND Cross(Parab, SMA) AND TradeTime;
Buy = Cover=direction == 0 AND Ref(direction, -1) == 0 AND Cross(SMA, Parab) AND TradeTime;

Выше в постах ты мне писал, как закрывать, но только если входы и выходы отдельно, без переворотов через TimeNum()>184400. А тут как ?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Июл 21, 2015 10:48 pm Ответить с цитатой Вернуться к началу

В конце дня? Ну например так.
Код:
Sell = Cover = Day() != Ref(Day(), 1);

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



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

СообщениеДобавлено: Ср Июл 22, 2015 12:50 pm Ответить с цитатой Вернуться к началу

Да, понял. Вот еще ситуацию как разрулить.
Код:

ShortLevel = формула расчета уровня;
BuyLevel = формула расчета уровня;
Buy = Cross(BuyLevel,L) AND  Ref(Parab > C, -1) AND TradeTime;
BuyPrice = BuyLevel;
Sell = Cross(Parab,O) OR TimeNum()>184400;
SellPrice=Max(C,ShortLevel);
Short = Cross(H,ShortLevel) AND Ref(Parab < C, -1) AND TradeTime;
ShortPrice = ShortLevel;
Cover = Cross(Open,Parab) AND TimeNum()>184400;
CoverPrice =Min(C,BuyLevel);

По этому коду он переворачивает лонг в шорт, хотя надо держать до обратного пересечения параболика. Ну т.е. если мы воршли в лонг и уровень шорта у нас наступил раньше обратного пересечения параболика, тогда в шорт не входим, а держим лонг и выходим на перескоке параболика.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Июл 22, 2015 1:03 pm Ответить с цитатой Вернуться к началу

Получается, что у тебя выход всегда на пересечении параболика. Так и пиши в коде.

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



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

СообщениеДобавлено: Ср Июл 22, 2015 1:16 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Получается, что у тебя выход всегда на пересечении параболика. Так и пиши в коде.

Ну я так и пишу
Код:

Sell = Cross(Parab,O) OR TimeNum()>184400;

А он почему-то переворачивается. Если цена на дошла до уровня шорта, и пересечение произошло раньше (как на картинке), тогда правильно считает. Если написать SellPrice=C, подразумевая закрытие свечи после перескока параболика, не помогает тоже.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Июл 22, 2015 1:24 pm Ответить с цитатой Вернуться к началу

В настройках тестера убери галку Reverse entry signal forces exit

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



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

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

000 писал(а):
В настройках тестера убери галку Reverse entry signal forces exit

О, спасибо. Помогло.
Посмотреть профиль Отправить личное сообщение
home30



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

СообщениеДобавлено: Ср Июл 22, 2015 4:44 pm Ответить с цитатой Вернуться к началу

А еще подскажи, что нужно в параметрах тестера указать, чтобы посчитать историю с учетом плечей и реинвестирования. Например, сейчас ГО на ФРТС 12 000. Объем при этом 102 000 руб. (ну плюс-минус). Грубо, это плечо 1 к 8,5. Если у нас в тесте растет прибыль, то мы же можем увеличивать кол-во лотов.
Сейчас я просто вбил в поле Initial equiti 200 000 (за период 11-15 годов выше цены не было) и в коде указал SetPositionSize( 1, spsShares ). Он считает только по одному контракту. Интересно посмотреть на результат с реинвестированием.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Июл 22, 2015 7:05 pm Ответить с цитатой Вернуться к началу

А может сам прочитаешь хотябы учебник?
http://www.amisite.ru/begin/beg_ind.php

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



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

СообщениеДобавлено: Ср Июл 22, 2015 11:54 pm Ответить с цитатой Вернуться к началу

000 писал(а):
А может сам прочитаешь хотябы учебник?
http://www.amisite.ru/begin/beg_ind.php

Учебник читал. И не раз. Вкладка General, поле Account Margin. Если плечо 1 к 9, тогда ставим там 11 (100/9). А в поле начальный капитал ставить 12 000. Правильно ? Но как быть в случае, если контракт стоит в декабре 12 года 150 тысяч, а сейчас он стоит 90 тыс. И это при одинаковом ГО в 12 000. При плече 1 к 9 он не даст открыть позу на 150 тыс даже на 1 контракт, если я правильно понимаю. Выходит, надо смотреть и под каждый период подгонять значение плеча и каждый период считать отдельно ?
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen