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


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

СообщениеДобавлено: Пн Фев 23, 2009 7:29 pm Ответить с цитатой Вернуться к началу

TDG писал(а):
С идентификаторами понятно, спасибо.
Только почему не использовать квиковскую проверку идентификатора? Он вроде читает из файла *.tro какие транзакции уже обработаны... А сам идентификатор задавать, на пример по предыдущему бару...
из инструкции к квику:

Можно и так. Только есть вероятность, что ами засрет .tri одинаковыми строками. Зачем?

TDG писал(а):

А по проскальзыванию еще вопрос.

1. Можно пример: пусть система должна купить при пересечении ценой уровня 1200. Тогда если цена пересечет его, какую цену робот выставит? 1212 или 1188 (если рассматривать 1 процент).
Правильно я понимаю что выставит 1212, но она исполнится по лучшей в данный момент в стакане, например 1203...? фактически брокер может исполнить ее по любой ему удобной цене, вплоть до 1212?

Совершенно верно. Заявка уйдет по 1212 но исполнится по лучшей на данный момент.
Заявки исполняет не брокер, биржа и на этот счет есть правила. Исполнится по лучшей цене.
TDG писал(а):

2. Почему нельзя просто поставить TYPE=M, чтобы рыночная заявка была?

Да вроде на фортс рыночных нет... (если не ошибаюсь) Т.е. так сделано для универсальности.

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



Зарегистрирован: 15.01.2008
Сообщения: 34
Откуда: Нижний Новгород

СообщениеДобавлено: Пн Фев 23, 2009 9:41 pm Ответить с цитатой Вернуться к началу

Все ясно, спасибо. А вообще робот суперский. Сегодня погонял через симулятор, все четко Smile
Посмотреть профиль Отправить личное сообщение
TDG



Зарегистрирован: 15.01.2008
Сообщения: 34
Откуда: Нижний Новгород

СообщениеДобавлено: Ср Мар 04, 2009 10:23 pm Ответить с цитатой Вернуться к началу

Олег, обнаружилась проблема.
сегодня одну сделку робот пропустил (не записал в файл).
Думаю из-за того, что в этот же момент была сделка по другому инструменту (это я уже вечером посмотрел по минутному графику, сигнал на одной и той же минутке). То есть по одному инструменту сигнал записал, по другому нет. Интервал часовой, скан через 2 сек.
Что-нибудь посоветуешь?
Или может еще какие причины могут быть?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Мар 05, 2009 12:35 am Ответить с цитатой Вернуться к началу

TDG писал(а):
Олег, обнаружилась проблема.
сегодня одну сделку робот пропустил (не записал в файл).

Фиг его знает почему. Трудно сказать ничего не зная. Конечно это нехороший звонок и обязательно надо выяснить в чем дело. Попробуй погоняй на симуляторе. Я ща обдумываю концепцию совершенно нового, адвансетного робота. Только скоро не ждите Smile
TDG писал(а):

Думаю из-за того, что в этот же момент была сделка по другому инструменту (это я уже вечером посмотрел по минутному графику, сигнал на одной и той же минутке). То есть по одному инструменту сигнал записал, по другому нет. Интервал часовой, скан через 2 сек.
Что-нибудь посоветуешь?
Или может еще какие причины могут быть?

Вообще в ID записи в tri код бумаги со сделкой должен учитываться через Full Name куда надо было внести двузначный код разный для всех символов. По идее если сигнал возник, то ему соответствует свой ID и если такой сигнал не записан в tri, то робот его пишет. Косяк может быть в том, что одинаковый код символов забит в Full Name или воможно сигнал появился на такой короткий срок, что робот не успел его выполнить (напрмр он возник в самом конце свечи, меньше чем за 2 сек до закрытия и прогона в этот момент небыло, а потом уже появилась следующая свеча без сигнала)

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



Зарегистрирован: 15.01.2008
Сообщения: 34
Откуда: Нижний Новгород

СообщениеДобавлено: Чт Мар 05, 2009 6:34 pm Ответить с цитатой Вернуться к началу

В том и проблема, что через симулятор все пишется. Номера все занесены. Может интервал сделать поменьше, например 1 сек?
И в целом как связан интервал сканирования и N quotantions=1? Что на что влияет?

А сегодня еще интересный момент заметил. Вчера в 18.00 по системе должна быть сделка по Лукойлу вверх (по пробою РС3 вверх). Робот ее записал и исполнил. А сегодня утром эту же сделку записал повторно (в идентификаторе время 18.00). Она не исполнилась, т.к. торги еще не начались, но сам факт неприятный. Видимо обновилась история или еще что, хотя вчера история догружалась до самого конца торгов...
Пока не придумал как этого избежать. Может в идентификатор добавить дату и очищать файл с транзакциями не полностью, а кроме сделок на последней свечке? т.к. файл с транзакциями утром был пустой, и поэтому в него повторно попала сделка, которая уже была.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Мар 05, 2009 9:38 pm Ответить с цитатой Вернуться к началу

Цитата:

И в целом как связан интервал сканирования и N quotantions=1? Что на что влияет?

Интервал сканирования это как часто робот будет проверять сигналы системы. В принципе чем чаще, том лучше. Если интервал сделать слишком большим, то
во первых
возможна ситуация когда сигнал появился в самом конце формирования бара а робот не просканировал, и уже появился новый бар и робот пропустит сигнал
во вторых
сигналы будут исполнаяться с задержкой которая может в некоторых случаях приводить к значительному скольжению...
а N quotantions=1 это на скольки последних барах робот будет проверять сигнал. 1 - значит только на последнем.
Цитата:

А сегодня еще интересный момент заметил. Вчера в 18.00 по системе должна быть сделка по Лукойлу вверх (по пробою РС3 вверх). Робот ее записал и исполнил. А сегодня утром эту же сделку записал повторно (в идентификаторе время 18.00). Она не исполнилась, т.к. торги еще не начались, но сам факт неприятный. Видимо обновилась история или еще что, хотя вчера история догружалась до самого конца торгов...

А tri файл видимо почистил (удалил вчерашние заявки)? Скорее всего получилось так. Робот просканировал последную свечку, она была еще вчерашная, а записи транзакции в кеш нету т.к. её удалили, вот он её и записал еще раз. Дату можно было бы добавить, то к сожалению длинна ID ограничена и скорее всего дата просто не влезет.

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



Зарегистрирован: 15.01.2008
Сообщения: 34
Откуда: Нижний Новгород

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

000 писал(а):
Дату можно было бы добавить, то к сожалению длинна ID ограничена и скорее всего дата просто не влезет.

Ну я сегодня попробовал добавить LastValue (Day() ) в идентификатор, пока вроде не ругается. Поглядим что будет когда день будет двузначным... Если не будет помещаться, думаю можно будет время поменять (например писать туда только часы).
В принципе это актуально только в тех случаях, когда сигнал появляется на последней свечке..
Посмотреть профиль Отправить личное сообщение
commenced
Советник


Зарегистрирован: 08.04.2008
Сообщения: 643
Откуда: от "Верблюда"

СообщениеДобавлено: Сб Мар 07, 2009 9:16 am Ответить с цитатой Вернуться к началу

TDG писал(а):
000 писал(а):
Дату можно было бы добавить, то к сожалению длинна ID ограничена и скорее всего дата просто не влезет.

Ну я сегодня попробовал добавить LastValue (Day() ) в идентификатор, пока вроде не ругается. Поглядим что будет когда день будет двузначным... Если не будет помещаться, думаю можно будет время поменять (например писать туда только часы).
В принципе это актуально только в тех случаях, когда сигнал появляется на последней свечке..


Это вообще не актуально, т.к. даже при отправке заявки она не исполняется.

_________________
Юра
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Fastin



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

СообщениеДобавлено: Вт Июл 13, 2010 11:03 am Ответить с цитатой Вернуться к началу

Здравствуйте!
Спасибо вам, Олег, за сканер очень хорошая штука!
Подскажите, пожалуйста чему равен минимально возможный интервал сканирования? 1 сек или можно меньше?
Просто обратил внимание, что через индикатор вроде как шустрее. В сканере сейчас 1сек. и с какой периодичностью считается индикатор если через него? но вот только напрягает, что через индикатор Ами не свернуть(
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Минимальное время 1 сек. Если через индикатор, то обычно чуть быстрее, но не гарантировано.

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



Зарегистрирован: 09.12.2009
Сообщения: 48
Откуда: Msk

СообщениеДобавлено: Ср Июл 14, 2010 10:24 am Ответить с цитатой Вернуться к началу

000 писал(а):
Минимальное время 1 сек. Если через индикатор, то обычно чуть быстрее, но не гарантировано.


Пришёл в выводу, что Ами не может работать быстрее секунды.
Прикрутил вывод транзакций индикатором через API, заявки летели с интервалом в 1 секунду.
Так что хоть сканер, хоть индикатор, разницы в скорости никакой.
Посмотреть профиль Отправить личное сообщение
belin



Зарегистрирован: 09.09.2009
Сообщения: 230
Откуда: wealth-lab user

СообщениеДобавлено: Ср Июл 14, 2010 11:02 am Ответить с цитатой Вернуться к началу

Osiris писал(а):
Прикрутил вывод транзакций индикатором через API, заявки летели с интервалом в 1 секунду.

Если в <Preferences><Intraday><Realtime chart refresh interval> поставить 0, то перерисовка индикаторов идет при каждом поступлении данных, у меня по умолчанию стояла 1. Посмотри, может это ускорит?
Посмотреть профиль Отправить личное сообщение
Osiris



Зарегистрирован: 09.12.2009
Сообщения: 48
Откуда: Msk

СообщениеДобавлено: Чт Июл 15, 2010 10:03 am Ответить с цитатой Вернуться к началу

belin писал(а):
Если в <Preferences><Intraday><Realtime chart refresh interval> поставить 0, то перерисовка индикаторов идет при каждом поступлении данных, у меня по умолчанию стояла 1. Посмотри, может это ускорит?


Спасибо belin. Как-то я упустил из-виду эту опцию. На глаз стало работать быстрее, так что + пол секунды нашему роботу)))
Посмотреть профиль Отправить личное сообщение
lesser



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

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

Привет , всем .

Хочу прикрутить робота для торговли фьючем на 15 минутных барах , почемуто если появляеться сигнал робот пишет в три файл заявку на каждом тике весь следующий бар Sad

Что может быть не так?

вот .три файл

TRANS_ID=011415001; PRICE=1980.86; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011415004; PRICE=1980.86; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011416001; PRICE=1982.36; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011416004; PRICE=1982.36; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011419001; PRICE=1978.62; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011419004; PRICE=1978.62; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011420001; PRICE=1979.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011420004; PRICE=1979.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011424001; PRICE=1978.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011424004; PRICE=1978.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011425001; PRICE=1978.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011425004; PRICE=1978.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011426001; PRICE=1981.86; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011426004; PRICE=1981.86; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011427001; PRICE=1982.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011427004; PRICE=1982.85; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011428001; PRICE=1983.87; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;
TRANS_ID=011428004; PRICE=1983.87; QUANTITY=1; OPERATION=B; CLASSCODE=XXXX; ACTION=NEW_ORDER; TYPE=L; SECCODE=XXX; ACCOUNT=XXXXX; CLIENT_CODE=XXXXX;

А должны быть только две первых заявки Sad
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

1. Похоже в настройках -> intraday у тебя время бара стоит end time of interval. Надо поставить start...
2. Вообще странно, что не каждую минуту заявка уходит....

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen