Автор |
Сообщение |
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
Приветствую коллеги трейдеры,
Недавно решил попробовать Amibroker (после WealthLab 4) и возник вопрос по записи транзакции в файл .tri для последующего чтения и исполнения в Quik.
Перелистал много страниц этого форума, но все тщетно, попадались скрипты размером c несколько листов А4, образно, либо не работающие ссылки на сайт со скриптом.
Нельзя ли записать код записи в файл коротким способом?
У меня в Велсе записано всего 4 строчки для каждой операции (лонг, селл, шорт и ковер), больше ничего, и прекрасно работает месяцами,
а именно при покупке по маркету записывается заявка в .tri файл и в следующую секунду позиция на графике Quik....
я не пишу про код создание, открытие, закрытие файлов, это вроде ясно.
----------------------
BuyatMarket (xxxxxx);
if bar = barcount-1 then
begin
FileWrite(tri, 'CLASSCODE=SPBFUT;SECCODE=BR-2.22;ACTION=NEW_ORDER;ACCOUNT=XXX;CLIENT_CODE=XXX;TYPE=M;OPERATION=B;QUANTITY=1;PRICE=0;TRANS_ID='+inttostr(trans_id)+';');
trans_id:=randomint(10000);
end;
---------------------
Почему решил попробовать Amibroker, только по одной причине, надо потестить стратегию в реальном времени с покупкой - продажей на текущем баре.
(обычное пересечение SMA, покупка-продажа нужна в момент пересечения), я также понаблюдал как отрабатываются сигналы и сигнал четко возникает в момент пересечения, надо его перебросить в Quik.
К сожалению в Велсе это сделать не возможно, там все работает при условии открытия позиции на следующем баре (bar +1) и никак иначе.
Или то что я хочу не стоит потраченного времени и в Амиброкере торговля на текущем не закрытом баре исполняется коряво?
Поэтому и обращаюсь к профессионалам в AFL
Спасибо за помощь. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Привет.
Простейший код с .tri вот.
http://www.amisite.ru/afl/exp/files/robot.afl
Но тут тоже открытие на следующем баре.
Но можно открывать позицию и в момент прихода сигнала.
Не вполне понятен твой вопрос. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
Спасибо попробую что получится в Ами сделать с tri методом.
Вопрос был как раз про простой метод передачи заявок через tri.
Про то что можно изменить barcount на текущий бар я где-то тут находил уже Вашу инфу. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
У Вас случайно нет под рукой описания данного кода, что куда вписывать с моей стороны?
Вижу по форуму что куски из этого описания публикуете, а где можно полное взять? ))
Update..
Нашел Краткое описание на сайте, разбираюсь.
Случайно не подскажете как отключить ошибку в Амиброкере, выскакивает постоянно - Не задан двузначный номер в поле FullName...хотя задал "05" в скобках
Update..
Прописал в Амике в General 05, в скрипте убрал 05...вроде работает |
|
|
Посмотреть профиль Отправить личное сообщение |
|
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
Все работает отлично до записи в TRI файл, пишет что нужно, дальше пока не проверил, но думаю и Квик норм отработает, опыт есть.
Возник сразу вопрос по транзакции, сначала был сигнал по пересечению скользяшек, запись прошла, т.е. сделка в лонг открыта в Quik, но тут я увидел, что свеча ливанула и сигнал пропал из Alert:)), и на следующей свече снова пересечение и заявка в лонг с записью в файл....
Удалось ли победить такую шляпу с исчезающими сигналами?
Я теперь понимаю почему Велслаб не стал заморачиваться и запретил торговать на текущем баре Smile) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
DennyV8 писал(а): |
Возник сразу вопрос по транзакции, сначала был сигнал по пересечению скользяшек, запись прошла, т.е. сделка в лонг открыта в Quik, но тут я увидел, что свеча ливанула и сигнал пропал из Alert:)), и на следующей свече снова пересечение и заявка в лонг с записью в файл....
Удалось ли победить такую шляпу с исчезающими сигналами?
Я теперь понимаю почему Велслаб не стал заморачиваться и запретил торговать на текущем баре Smile) |
Единственный вариант это запоминать сигнал на баре и если он уже был, то в дальнейшем игнорировать сигналы на этом баре.
Это не очень просто. Ну если есть большое желание и необходимость, то победить можно....
Там еще возникнет такой косяк. Допустим сигнал возник и пропал. Позиция открыта. А сигнал больше не появился. Позиция открыта а система ее не видит и не собирается закрывать. ))) |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
[quote="000"]
DennyV8 писал(а): |
Там еще возникнет такой косяк. Допустим сигнал возник и пропал. Позиция открыта. А сигнал больше не появился. Позиция открыта а система ее не видит и не собирается закрывать. ))) |
Вот это и случилось, на текущей свече сигнал больше не появился, он появился на следующей и в ту же сторону )....этот косяк не победить? тогда придется ручками и из робота советника сделать )) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
DennyV8
Зарегистрирован: 11.01.2022
Сообщения: 100
|
000 писал(а): |
DennyV8 писал(а): |
Возник сразу вопрос по транзакции, сначала был сигнал по пересечению скользяшек, запись прошла, т.е. сделка в лонг открыта в Quik, но тут я увидел, что свеча ливанула и сигнал пропал из Alert:)), и на следующей свече снова пересечение и заявка в лонг с записью в файл....
Удалось ли победить такую шляпу с исчезающими сигналами?
Я теперь понимаю почему Велслаб не стал заморачиваться и запретил торговать на текущем баре Smile) |
Единственный вариант это запоминать сигнал на баре и если он уже был, то в дальнейшем игнорировать сигналы на этом баре.
Это не очень просто. Ну если есть большое желание и необходимость, то победить можно....
Там еще возникнет такой косяк. Допустим сигнал возник и пропал. Позиция открыта. А сигнал больше не появился. Позиция открыта а система ее не видит и не собирается закрывать. ))) |
Если у меня робот только лонговый, то можно сказать роботу, что прошлая заявка на продажу уже была (в TRI файле есть запись) и сейчас возможна только покупка, и он ждет дальше покупку. Как-то , просто вроде выглядит.
Еще подскажите , тот бот который с API, он же увидит что сейчас в Квике закрыта лонговая позиция например и надо ждать только покупку а не продажу?
Спс. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Нет. Не видит. Принципиальной разницы между APIшным роботом и tri нету... (( |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
meewn
Зарегистрирован: 12.08.2022
Сообщения: 1
|
000 писал(а): |
Нет. Не видит. Принципиальной разницы между APIшным роботом и tri нету... (( |
Добрый день, очень интересно |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|