Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Роботы |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 След. |
Автор |
Сообщение |
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
Ну вот собственно... Выставил торговлю фучем Сбера 10 лотами, после входа-выхода робот благополучно прописал нулик в файл, а на счету валялось 8 лотов, так и не нашёдших своего покупателя, торговля по рынку была... |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Какого робота использовал и дай плиз файл robot_log.it |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
belin
Зарегистрирован: 09.09.2009
Сообщения: 230
Откуда: wealth-lab user
|
kosbar писал(а): |
Ну вот собственно... Выставил торговлю фучем Сбера 10 лотами, после входа-выхода робот благополучно прописал нулик в файл, а на счету валялось 8 лотов, так и не нашёдших своего покупателя, торговля по рынку была... |
Это на тестовом сервере? Из 10 маркет заявок 2 исполнились, остальные нет? В СмартТрейде в таблице всех заявок( не только активных, а всех за день) это должно быть отражено, если не на тестовом, то с номерами заявок в клиентский отдел.
У меня на тестовом было: маркет заявки висели по 2 часа без исполнения на ФОРТСЕ. Принята, но не исполнена, потом исполняется в самый ненужный момент. Я тогда перешел на лимитные, если для фьючерса на индекс РТС ставить лимитную на 200 внутрь рынка, т.е. закрытие прошлого бара плюс/минус 200 для покупки/продажи, то даже с тестовым диким спредом исполнялось всегда по 60-100 раз в день. Для контроля открывай "все заявки" в смарттрейде и первое время смотри и там и лог файл робота, пока стабильно не заработает.
Олег, похоже, кроме меня появился ещё человек интересующийся контролем прохождения заявок. Может пора продолжить работу над плагином? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Да и сам давно собираюсь.
Ну вот вроде дочь в Чехию на учебу отправил. Жена с Чехии вернулась. Все гости вроде после этого уже пришли...
Пора начинать... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
000 писал(а): |
Какого робота использовал и дай плиз файл robot_log.it |
Я тут было сначала файл с роботом кинул (который я не трогал совсем), потом только перечитал и понял, что нужен лог-файл. Его я уже подчистил, но на сколько помню, там всё было симпатишно, купили-продали, без эксцессов в общем.
000 писал(а): |
Да и сам давно собираюсь.
Ну вот вроде дочь в Чехию на учебу отправил. Жена с Чехии вернулась. Все гости вроде после этого уже пришли...
Пора начинать... |
Главное Олег глянь мою систему построения кода через цикл for! А то блин хотел столько всего понавесить на свой "шкилетик" и не вышло, прям досада...
Может Томашу накалякать? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Я почему спросил. Я там несколько раз писал дополнения для робота потому, что изначально было с ошибками. А конечный код без ошибок не помню выкладывал или нет. Может у тебя не правильный? Ну и лог полюбому нужен. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
000 писал(а): |
Я почему спросил. Я там несколько раз писал дополнения для робота потому, что изначально было с ошибками. А конечный код без ошибок не помню выкладывал или нет. Может у тебя не правильный? Ну и лог полюбому нужен. |
Вот тогда робот. Логи будут сегодня к вечеру, надеюсь.
И вопрос из серии про циклы, а как организовать стопы? Шибко не понятно как, например, профит-стопы осуществить.
Видимо нужно buy[i] - ловить этот i индекс и от него заряжать стоп-профит? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
kosbar писал(а): |
Видимо нужно buy[i] - ловить этот i индекс и от него заряжать стоп-профит? |
Да. Запоминаешь цену входа и от неё пляшешь. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
000 писал(а): |
kosbar писал(а): |
Видимо нужно buy[i] - ловить этот i индекс и от него заряжать стоп-профит? |
Да. Запоминаешь цену входа и от неё пляшешь. |
А как же стоп-приказы? Не подойдут? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
kosbar писал(а): |
000 писал(а): |
kosbar писал(а): |
Видимо нужно buy[i] - ловить этот i индекс и от него заряжать стоп-профит? |
Да. Запоминаешь цену входа и от неё пляшешь. |
А как же стоп-приказы? Не подойдут? |
???
Если стоп и профит фиксированные, то цена входа +- и получаем стоп и профит.
На форуме точно были примеры. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Робот почти нормальный. Лучше используй этот
Код: |
Filter = 1;
NameForPos = "";
TimeFrame = 0; // тайм фрейм в секундах.
Accaunt = "ST7194-RF-01";
Tickers = "RIU1,SRU1"; // торгуемые символы через запяту, для контроля.
///////////////
// Размер лотов и коды символов.
/////////////
if(Name() == "RIU1")
{
NameForPos = "RIU1"; // это для записи файла с текущей позицией,
//на случай если имя бумаги в ами содаержат запрещённые символы
Lots = 1;
Code = "RTS-9.11_FT";
}
else if(Name() == "SRU1")
{
NameForPos = "SRU1"; // это для записи файла с текущей позицией,
//на случай если имя бумаги в ами содаержат запрещённые символы
Lots = 10;
Code = "SBRF-9.11_FT";
}
////////// функции //////////
function ReadPos() {
fh = fopen( NameForPos + "_robot.it", "r");
if( fh ) {
p = fgets( fh );
p = StrToNum(p);
}
else {
fh = fopen( NameForPos + "_robot.it", "w");
fputs( "0", fh);
p = 0;
}
fclose( fh );
return p;
}
procedure WritePos( q ) {
fh = fopen( NameForPos + "_robot.it", "w");
fputs( NumToStr( q, 1.0, False ), fh);
fclose( fh );
}
procedure LogWrite(s) {
fh = fopen( "robot_log.it", "a");
s = s + "\n";
fputs( s, fh);
fclose( fh );
}
pos = ReadPos();
str = Now(0) + " " + Name();
procedure order(bs) {
M = ITOrder(Accaunt, Code, bs, 1, 1, 0, Lots, 0);
AddTextColumn(M, "номер ордера");
N = ITOrderMessage();
AddTextColumn(N, "ответ IT Trade");
if(StrToNum(M) > 0) {
str = str + " заяка исполнена" + " ответ сервера=" + N + " номер заявки=" + M;
if(pos > 0 AND bs == 2) { // закрытие лонга
WritePos(0);
}
else if(pos == 0 AND bs == 3) { // шорт
WritePos(-1*Lots);
}
else if(pos < 0 AND bs == 4) { // закрытие шорта
WritePos(0);
}
else if(pos == 0 AND bs == 1) { // лонг
WritePos(Lots);
}
str = str + " заявка исполнена";
}
else {
str = str + " заявка НЕ исполнена" + " ответ сервера=" + N + " номер заявки=" + M;
}
}
///////////// проверка наличие символа в списке для торговли ////////////////
k = 0;
Permit_Ticker = False;
do {
Tick = StrExtract(Tickers, k);
k++;
if(Name() == Tick)
Permit_Ticker = True;
} while(Tick != "");
//////////////Система///////////////
b1 = Open + 5;
b2 = Open - 5;
BuyPrice = b1;
CoverPrice = b1;
SellPrice = b2;
ShortPrice = b2;
Buy = High > b1;
Sell = Low < b2;
Short1 = 0;
Cover1 = 0;
Buy1 = ExRem(Buy,Sell);
Sell1 = ExRem(Sell, Buy);
//////////////система///////////////
AddColumn( C[BarCount-1], "цена", 1.2, colorDefault, colorDefault, 70 );
AddColumn( pos, "позиция", 1.0, colorDefault, IIf(pos > 0, colorGreen, colorDefault), 60);
if (TimeFrame == Interval() AND Permit_Ticker)
{
if(Buy1[BarCount-1] AND pos == 0) {
order(1);
str = str + " Buy";
AddTextColumn("Buy", "Buy");
LogWrite(str);
}
else if(Sell1[BarCount-1] AND pos > 0) {
order(2);
str = str + " sell";
AddTextColumn("Sell", "Sell");
LogWrite(str);
}
if(Short1[BarCount-1] AND pos == 0) {
order(3);
str = str + " Short";
AddTextColumn("Short", "Short");
LogWrite(str);
}
else if(Cover1[BarCount-1] AND pos < 0) {
order(4);
str = str + " Cover";
AddTextColumn("Cover", "Cover");
LogWrite(str);
}
}
else if(TimeFrame != Interval()) {
PopupWindow( "Не соответствует временной интервал в АА и в коде",
"ошибка", timeout = 5, left = -1, top = -1 ); }
|
и давай лог и комментарии что не так. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
belin
Зарегистрирован: 09.09.2009
Сообщения: 230
Откуда: wealth-lab user
|
Только выставь нормально
Код: |
TimeFrame = 0; // тайм фрейм в секундах.
|
Ну, и новые тикеры во всех вхождениях. И новые обращения к фьючерсам типа RIZ1=RTS-12.11_FT в функции подачи заявки. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
Короче попробовал я 5 лотов по фучуСбера и иногда не проходят заявки, в Смарте пишут:
SendAddOrder: не возомжно создать команду, возможно используются не верные схемы сообщений MQ timeout code -2147196924 На сколько знаю это вроде глюки связанные с демо счетом...
и второй вариант ошибки:
Не разрешена встречная заявка на один счет и/или ИНН. С этим сложнее...
Логи не ложу, в них всё чисто, кроме первой строки:
21.09.2011 12:51:46 SRZ1 заявка не исполнена ответ сервера =возможно неправильный символ BuyТоже не нахожу объяснения.
Т.к. за работой робота не следил глазами, понять где мой счет ушёл в +2 лота по Сберу нет никакой возможности.
Надо наверное не на демо пробовать? С ним чо-то косяков много. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Я когда свой Алоровский робот отлаживал тупо гонял 1 фьюч газпрома туда сюда. На реале естественно.
В смарте у меня счета нет поэтому ничего сказать не могу. Может надо техподдержку их попытать ? |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
kosbar
Зарегистрирован: 17.03.2009
Сообщения: 356
|
два раза запускал робота сегодня, оба раза первая строка в логах:
21.09.2011 19:42:33 SRZ1 заявка не исполнена ответ сервера =возможно неправильный символ Buy
По поводу тестов, кину я наверное на iT денег, демо всё-таки слишком разнится с реалом та же работа до 22-00 по Мск напрягает. надеюсь в роботе троянов нету? ))))
И тут листая ветку форума на http://www.itinvest.ru обнаружил, что там у людёф не до конца история грузится:
http://www.itinvest.ru/forum/index.php?showtopic=63382&st=240&p=261177&#entry261177
С этим как у вас? |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
|
Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Роботы |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 След. |
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|