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



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

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

Провожу анализ трех баров и проверяю, чтобы тот, что посерединке, был выше тех, что справа и слева от него. При этом пишу так, чтобы не заглядывать в будущее

v_res = ref(H,-2) < ref(H,-1) and ref(H,-1) > H;

Средний бар - это ref(H,-1)
Моя задача пометить этот бар. В приведенном выше условии единичка будет проставлена не на этом баре, а на следующем.

Если я напишу

v_res = ref(v_res,1)

то сдвину единичку на средний бар, но вроде как заглядываю при этом в будущее. Как же правильно написать такое простое условие?
Посмотреть профиль Отправить личное сообщение
myaucha



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

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

То ли вопрос я очень сложный задал, то ли очень простой... но ответа нет... интересует решение без for (...), а чисто на массивах
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Сен 15, 2010 9:47 pm Ответить с цитатой Вернуться к началу

Ничего сложного. Просто я вопрос пропустил.
Если тебе надо для теста, то не надо сдвигать "единичку". Пусть будет на следующем баре. Все равно узнаешь ты о том, что этот бар удовлетворяет условию только после того как сформируется следующий. А если просто на график для удобства и красоты, то сдвинь. Ничего страшного.

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



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

СообщениеДобавлено: Чт Сен 16, 2010 12:28 pm Ответить с цитатой Вернуться к началу

Я запутался немного с этим сдвигом, хотел уточнить. ref(C,-1) это сдвиг на один бар с текущего или с предыдущего завершенного бара?
например есть код для тестера (бары дневные)

lokmin = C < Ref(C,-1)AND Ref(C,-1)< Ref(C,-2);


он означает что текущий клоуз меньше вчерашнего клоуза и вчерашний меньше позавчерашнего и заглядывает таким образом в будущее, т.к. сегодняшний клоуз мы еще не знаем

или что вчерашний завершенный клоуз меньше позавчерашнего а позавчерашний меньше чем 2 дня назад

и далее ссылаюсь на хай последнего бара в этой последовательности

BuyLevel = ValueWhen(lokmin , High,1);

как правильно написать вход в покупку

Buy = Ref (Cross (H, BuyLevel),-1);

или просто

Buy = Cross (H, BuyLevel);


И еще если использовать хай вместо клозе ситуация изменится или нет?

_________________
Олег. Будем знакомы.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Сен 16, 2010 2:58 pm Ответить с цитатой Вернуться к началу

_ok писал(а):
Я запутался немного с этим сдвигом, хотел уточнить. ref(C,-1) это сдвиг на один бар с текущего или с предыдущего завершенного бара?
например есть код для тестера (бары дневные)

lokmin = C < Ref(C,-1)AND Ref(C,-1)< Ref(C,-2);


он означает что текущий клоуз меньше вчерашнего клоуза и вчерашний меньше позавчерашнего и заглядывает таким образом в будущее, т.к. сегодняшний клоуз мы еще не знаем

Тут важно разделять тест и работу в реальном времени.
Если тест, то имеется в виду, что смотрим в конце текущего периода и закрытие уже известно. Таким образо подглядывания нет.
_ok писал(а):

или что вчерашний завершенный клоуз меньше позавчерашнего а позавчерашний меньше чем 2 дня назад

А такой подход лучше годится для работы в реале. Чтобы не ловить конец бара и не совершать сделку в последние секунды торговли бара проще перенести сигнал на открытие следующего бара. Но в таком случае при тесте и цену сделки надо ставить Open
_ok писал(а):

и далее ссылаюсь на хай последнего бара в этой последовательности

BuyLevel = ValueWhen(lokmin , High,1);

А почему на последний? Ничто не мешает сослаться на средний (самый нижний)
_ok писал(а):

как правильно написать вход в покупку

Buy = Ref (Cross (H, BuyLevel),-1);

или просто

Buy = Cross (H, BuyLevel);


И еще если использовать хай вместо клозе ситуация изменится или нет?

Первый вариант сделка по закрытию. Второй по открытию следующего бара.
В реале если сделка осуществляется не по Open/Close а именно по цене уровня BuyLevel надо использовать H. Фигня в том, что если H уровень пересек, то ниже он уже никак не станет. А клозе может уйти выше и потом снова опуститься.

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



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

СообщениеДобавлено: Пн Сен 20, 2010 8:35 am Ответить с цитатой Вернуться к началу

Спасибо, кое что в голове прояснятся.
Но есть несколько вопросов. Пишу я пока для тестера и получается у меня, что вот такой код смещает исполнение сделки аж на два бара в перед, т.е. если сегодня сигнал то сделка исполнится только послезавтра (бары дневные).
Buy = Ref (Cross (H, BuyLevel),-1);

Чтобы сделка исполнилась завтра нужно писать без Ref
Buy = Ref (H, BuyLevel);


А вот чтобы войти сегодня на текущем баре по цене клозе или BuyLevel (соответственно выставляю нужную цену) нужно написать
Buy = Ref (Cross (H, BuyLevel),1); - но ведь здесь заглядывание в будущее. Что я неправильно делаю?

И еще несколько вопросов
- в тестере лучше пользоваться SetTradeDelays или Ref,
- можно ли их использовать вместе

_________________
Олег. Будем знакомы.
Посмотреть профиль Отправить личное сообщение
_ok



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

СообщениеДобавлено: Пн Сен 20, 2010 12:08 pm Ответить с цитатой Вернуться к началу

Блииин, понял почему такие задержки у меня, в тестере потому что задержки установлены.

_________________
Олег. Будем знакомы.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Пн Сен 20, 2010 10:18 pm Ответить с цитатой Вернуться к началу

Laughing

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen