Торговый автомат Амиброкер+Квик

  • Автор темы mehanizator1
  • Дата начала

MiD

New member

MiD

New member
Почему-то не пишет ничего в файл транзакций... Сигналы выдает, пути все правильные, файл лежит пустой...
 

MiD

New member
Почему-то не пишет ничего в файл транзакций... Сигналы выдает, пути все правильные, файл лежит пустой...
Стоило написать и тут же получил все что надо :))
Впрочем - все равно: На покупку был сигнал - была транзакция. А появился на продажу - ничего не записал...
 

MiD

New member
Увы - так и не пойму, почему на покупку хорошо пишет в файл транзакции, а на продажу - через раз
 

Ghost

New member
Увы - так и не пойму, почему на покупку хорошо пишет в файл транзакции, а на продажу - через раз
Недавно решил отказаться от Метастока, потому что его функциональность уже устарела на 10 лет, там нет даже такой функции, как работа с файлами, приходится MSX.DLL юзать.

Решил посмотреть что предлагает Amibroker - программа очень нравится в том числе и из-за больших возможностей в создании робота.
Но столкнулся с одной трудностью которую не могу решить уже 3 недели.
Взял пример скрипта робота с этого сайта и начал тестировать в оффлайне с помощью встроенного симулятора, закомментировал строчку (Now(3)==LastValue(DateNum())) в условии вывода сигнала в файл.
В итоге сигналы в файл пишутся, но не все, хотя переменные бай / селл отрабатывают и стрелочки рисуются на графике, а вот в файле сигналы пропускаются. Версия программы последняя.
Помогите в чем ошибка, может быть надо настройки АМИ поменять??
 

mehanizator1

New member
В итоге сигналы в файл пишутся, но не все, хотя переменные бай / селл отрабатывают и стрелочки рисуются на графике, а вот в файле сигналы пропускаются. Версия программы последняя.
Помогите в чем ошибка, может быть надо настройки АМИ поменять??
а какой таймфрейм?
 

mehanizator1

New member
Так, проблема с пропадающими сигналами отслежена.

Дело в том, что метастоковский файлсервер скидывает данные в базу через какие-то промежутки времени. Если метастоковский файл тиковый, то сразу, а если минутный, то промежуток между скидыванием новых баров может быть НЕСКОЛЬКО МИНУТ. Соответственно когда амиброкер обновляет график, промежутки между обновлениями могут достигать нескольких минут, если соответствующий файл метастока не тиковый. Так как скрипт смотрит сигнал по последнему бару, если график у вас минутный и пришло несколько минутных баров, скрипт отрабатывает только сигнал на последнем баре, а если сигнал случился ранее, он не проходит.

Резюме.

Файл метастока должен быть меньшего таймфрейма, чем таймфрейм графика в амиброкере. Если таймфрейм у вас минутный, то соответствующий файл метастока должен быть тиковым и т.д.
 

Ghost

New member
Так, проблема с пропадающими сигналами отслежена.

Дело в том, что метастоковский файлсервер скидывает данные в базу через какие-то промежутки времени. Если метастоковский файл тиковый, то сразу, а если минутный, то промежуток между скидыванием новых баров может быть НЕСКОЛЬКО МИНУТ. Соответственно когда амиброкер обновляет график, промежутки между обновлениями могут достигать нескольких минут, если соответствующий файл метастока не тиковый. Так как скрипт смотрит сигнал по последнему бару, если график у вас минутный и пришло несколько минутных баров, скрипт отрабатывает только сигнал на последнем баре, а если сигнал случился ранее, он не проходит.

Резюме.

Файл метастока должен быть меньшего таймфрейма, чем таймфрейм графика в амиброкере. Если таймфрейм у вас минутный, то соответствующий файл метастока должен быть тиковым и т.д.
Тестил на таймфрейме 5,15,30 минут.
А вот с запаздыванием АМИ на несколько минут - это уже интересная информация, попробую потестить с новыми параметрами.
Кстати, как лечить запаздывание, переходить на импорт данных по DDE ??
 

Ghost

New member
Кстати, как лечить запаздывание, переходить на импорт данных по DDE ??
что за импорт по ДДЕ?
я одно время игрался связкой Transaq + Ami
Когда заметил задержки при импорте данных через дата-сервер Метаса, то настроил импорт из Траназка через DDE. Один минус - история не грузится. А так данные бегут пачками без всяких задержек на любых таймфреймах.
 

mehanizator1

New member
Кстати, как лечить запаздывание, переходить на импорт данных по DDE ??
что за импорт по ДДЕ?
я одно время игрался связкой Transaq + Ami
Когда заметил задержки при импорте данных через дата-сервер Метаса, то настроил импорт из Траназка через DDE. Один минус - история не грузится. А так данные бегут пачками без всяких задержек на любых таймфреймах.
надо же... у квика такого нет.
 

Yurmih

New member
Всем привет.

Mehanizator, подскажи пожалуйста:
В твоей формуле для ами, где указывается, что в файл записывается цена закрытия ? Здесь :
if (ifbuy) {
price=(1+Otstup/100)*Close [BarCount-1];
makeandsave("B",1,price); }

Этот Close ?

Если оно, то подскажи пожалуйста как его поменять на open...
 

mehanizator1

New member
Всем привет.

Mehanizator, подскажи пожалуйста:
В твоей формуле для ами, где указывается, что в файл записывается цена закрытия ? Здесь :
if (ifbuy) {
price=(1+Otstup/100)*Close [BarCount-1];
makeandsave("B",1,price); }

Этот Close ?

Если оно, то подскажи пожалуйста как его поменять на open...
а смысл? Close последнего бара - это текущая цена. Что толку вы поставите Open, сделка-то все равно по текущей пойдет.
 

MiD

New member
Так, проблема с пропадающими сигналами отслежена.

Резюме.

Файл метастока должен быть меньшего таймфрейма, чем таймфрейм графика в амиброкере. Если таймфрейм у вас минутный, то соответствующий файл метастока должен быть тиковым и т.д.
увы - все равно проблема с пропаданием осталась. А тиковый таймфрейм метастока порождает неверный формат даты в Амиброкере.
 

Yurmih

New member
а смысл? Close последнего бара - это текущая цена. Что толку вы поставите Open, сделка-то все равно по текущей пойдет.
Спасибо. Понял. Не так вопрос поставил.

У меня спусковым механизмом является пересечение скользящих средних. И получается ситуация, что пересечение происходит между барами, а сигнал рисуется только при закрытии следующего. Т.е. Сигнал напрмер м/у 11.15 и 11.16 в квике. Ами поставит сигнал на баре 11.16 по цене close. А мне чем раньше тем лучше. Если я поменяю close на open мне это поможет ?
 

Ghost

New member
а смысл? Close последнего бара - это текущая цена. Что толку вы поставите Open, сделка-то все равно по текущей пойдет.
Спасибо. Понял. Не так вопрос поставил.

У меня спусковым механизмом является пересечение скользящих средних. И получается ситуация, что пересечение происходит между барами, а сигнал рисуется только при закрытии следующего. Т.е. Сигнал напрмер м/у 11.15 и 11.16 в квике. Ами поставит сигнал на баре 11.16 по цене close. А мне чем раньше тем лучше. Если я поменяю close на open мне это поможет ?
Предложу свой вариант, берем и пишем свой индикатор скользящих средних в котором цена учитывается по OPEN
 
Your email address will not be publicly visible. We will only use it to contact you to confirm your post.
Сверху