Автор |
Сообщение |
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
Как написать в данной системе:
Top = Ref(HHV(H, 20), -1);
Bot = Ref(LLV(L, 20), -1);
Plot(Top, "Top", colorGreen);
Plot(Bot, "Bot", colorRed);
Buy = Cross(H, Top);
Sell = Cross(Bot, L);
Short = Sell;
Cover = Buy;
1. Открытие позы - стоп ордер
2. Первоначальный стоп - противоположный экстремум бара, пробившего канал
3. Если выбит стоп повторный заход на первоначальном уровне
Заранее благодарен. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
sluk писал(а): |
1. Открытие позы - стоп ордер
|
В смысле вход по уровню? По цене Top?
BuyPrice = Top;
sluk писал(а): |
2. Первоначальный стоп - противоположный экстремум бара, пробившего канал
|
Если я правильно понял первый вопрос, то второй смысла не имеет. При тестировании мы имеем дело с уже полностью сформированными барами и какой был противоположный экстремум в момент пробития не известно.
sluk писал(а): |
3. Если выбит стоп повторный заход на первоначальном уровне
Заранее благодарен. |
Вопрос не корректный. А сколько ждем захода на этом уровне? А если повторное пробитие уровня произойдет только через квартал? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
Логика следующая:
1. Находясь вне рынка, выставляем два стопа - один на покупку, другой на продажу, на уровнях Top и Bot соответственно.
2. Если сработал стоп на уровне, например, Top, т.е мы купили актив - выставляем стоп-лосс на n-пунктов ниже low бара пробившего Top.
3. Если стоп-лосс сработал, то входим в рынок при выполнении одного из трёх условий: повторный прорыв предыдущего уровня или прорыв Top (который скорей всего на новом уровне) или прорыв Bot. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
2. Если сработал стоп на уровне, например, Top, т.е мы купили актив - выставляем стоп-лосс на n-пунктов ниже low бара пробившего Top. |
В момент пробития уровень low бара пробившего не известен т.к. бар еще не полностью сформировался.
Цитата: |
3. Если стоп-лосс сработал, то входим в рынок при выполнении одного из трёх условий: повторный прорыв предыдущего уровня или прорыв Top (который скорей всего на новом уровне) или прорыв Bot.
|
И сколько времени живет этот предыдущий уровень?
Если пробите предыдущего уровня состоялось через квартал все равно входим? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
1. Стоп-лосс выставляется после закрытия бара, как вариант, Стоп-лосс можно поставить под бар предыдущий "пробойному".
2. Предыдущий уровень живет не долго, если цена "пойдет" вниз, к нижней границе канала, то через 20(в данном случае)баров, верхняя граница канала тоже "пойдет" вниз, вслед за ценой, и опустится ниже "предыдущего уровня".
3. Если стоп-лосс сработал, то входим в рынок при выполнении одного из трёх условий: повторный прорыв предыдущего уровня или прорыв Top (который скорей всего на новом уровне) или прорыв Bot - если одно из условий выполняется, остальные отменяются. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Примерно таким макаром. Это только для лонга
Код: |
SetPositionSize(1, 4);
Top = Ref(HHV(H, 20), -1);
Bot = Ref(LLV(L, 20), -1);
BuyLev = ValueWhen(Cross(H, Top), Top, 1);
Top = Min(Top, BuyLev);
Buy = H > Top AND L < Top;
BuyPrice = Top;
ApplyStop(stopTypeLoss, stopModePoint, BuyLev - L, ExitAtStop = 1, volatile = False, ReEntryDelay = 0);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
Большое спасибо за код!
Только вот при попытке протестировать пишет:
Missing buy/sell variable assignments.
Check users guide:Tutorial:Back-testing yuor trading ideas for the details.
Я с AmiBroker "общаюсь" 2 недели, и как програмист = 0.
Спасибо за понимание! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Блин. По ошибке скопировал не весь код.
Код: |
SetPositionSize(1, 4);
Top = Ref(HHV(H, 20), -1);
Bot = Ref(LLV(L, 20), -1);
BuyLev = ValueWhen(Cross(H, Top), Top, 1);
Top = Min(Top, BuyLev);
Buy = H > Top AND L < Top;
BuyPrice = Top;
Sell = Cross(Bot, L);
SellPrice = Bot;
ApplyStop(stopTypeLoss, stopModePoint, BuyLev - L, ExitAtStop = 1, volatile = False, ReEntryDelay = 0);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
Missing buy/sell variable assignments.
Check users guide:Tutorial:Back-testing yuor trading ideas for the details. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вообще во второй раз я проверил. Вот еще раз прогнал этот код. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
У меня чушь получилась, где искать ошибку? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Покажи первую страницу настроек и какой TickSize стоит на индекс? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Попробуй сделать точно как у меня.
Убери Futures mode, Activate stops immediately (его один черт надо убрать т.к. я говорил, что в момент входа уровень стопа не известен)
А TickSize сделай 5 |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
sluk
Зарегистрирован: 12.01.2010
Сообщения: 14
Откуда: Ростов-на-Дону
|
Всё сделал, Net Profit -2%, за 2009год, примерно такой же результат показывает Price Channel "без выкрутасов", что довольно странно т.к в
Wealth lab(бе) такая же система, те же данные, тот же период: Net Profit -200%.
Протестирую вручную, прежде чем искать ошибки в настройках тестера.
Спасибо за содействие! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|