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



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

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

Ааа. Не доглядел. Там скобки не хватало.
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Ну скобку пропустил. С кем не бывает Smile
Код:

Buy = LastValue(Ref(Buy, -1));
Sell = LastValue(IIf(Sell > 1.1 AND Sell < 4.9, Sell, Ref(Sell, -1)));
Short = LastValue(Ref(Short, -1));
Cover = LastValue(IIf(Cover > 1.1 AND Cover < 4.9, Cover, Ref(Cover, -1)));

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



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

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

ОЙ) а ты уже ответил)
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Arahan



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

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

Привет, Олег!

Запустил, этот код в реальный рынок, посмотреть, как все это работает. Столкнулся с такой проблемой, когда меня закрыло по стопу, потом меня закрыло еще и по скользящим повторно. То есть я оказался в противоположной позиции. Если я правильно понял, в этом коде получается два независимых выхода, которые могут исполнится вместе. А нужно, разумеется, чтобы когда закрыло по ApplyStop, мы ждали следующий сигнал, а не отрабатывали и условие sell тоже.

Может можно написать что-то типа:
Sell= Cross (EMA(Close, 40), EMA(Close, 31)) OR ApplyStop ;

Или проблема в чем-то другом?
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Скорее всего в другом. Не долен он 2 раза подряд закрывать один лонг.
Дай строки из tri, посмотрю, может удастся понять в чем трабл. Только убери оттуда конфиденциальную информацию.

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



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

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

Блин( я его почистил уже. Ну ничего, погоняю в понедельник, и скину инфу) с этой системой меня часто будут по стопам выносить)))

Еще хотел спросить, это нормально, что заявки исполняются на 2-4 секунде? Можно ли как-то уменьшить до секунды? Ну или до двух, но стабильно. А то они у меня и по 5 секунд идут изредка.
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Не знаю. Я с квиком не работаю.
Попробуй отследить где тормоза
Ами -> tri
tri -> Квик
Квик -> биржа

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



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

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

Боюсь, не знаю как это сделать. Намекни, пожалуйста.
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Arahan



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

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

В начале вообще по 7 секунд задержки были, поменял Realtime chart refresh interval [sec] на -1 Вроде получше стало.
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Ну Ами можно заставить писать в tri время твоего компа в тот момент когда он пишет строку заявки.
Вот в этом месте
Код:
transid = "TRANS_ID="   +FullName()+LastValue(TimeNum())+dir+"; ";

робота сделай так
Код:
transid = "TRANS_ID="   +FullName()+LastValue(TimeNum())+dir+"_" + Now(4) + "; ";

В результате ТрансИД будет содержать время компа в момент записи строки (последние 6 цифр, ччммсс).
А вот дальше не знаю.
Только в таком виде робот работать не будет. Квик такой трансИД не пропустит, но можно сделать временно и посмотреть на сколько тормозит связка Квик-> Ами (получение данных) -> tri....

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



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

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

ok, спасибо. в понедельник попробую.
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Arahan



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

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

Привет, Олег!

Сегодня был удачный момент. Закрыли по стопу аж два раза. Первый раз сработал стоп, закрылся лонг, а потом на следующей свече пересеклись скользящие и еще раз продался фьючерс. К тому же на этой же свече был переворот в шорт и получилось, что я стал в шорт двойным сайзом. Короче отработался и стоп и выход по скользящим. Был еще один вход, который закрылся по стопу. Но там, что-то непонятное произошло, закрытие стопа и переворот скользящим произошел вроде бы в одно время и почти в одном месте. Получилось, что в 14.40.02 сначала закрылся шорт по стопу, а потом через 12 секунд в 14.40.12 еще был куплен фьючерс. Я так понял, что опять дважды отработало. Ниже скопировал информацию из .tri файла, акк и клиента убрал.

TRANS_ID=011315001; PRICE=163035; QUANTITY=1; OPERATION=B; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011410002; PRICE=156320; QUANTITY=1; OPERATION=S; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011415002; PRICE=156450; QUANTITY=1; OPERATION=S; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011415003; PRICE=156450; QUANTITY=1; OPERATION=S; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011435004; PRICE=163010; QUANTITY=1; OPERATION=B; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011440004; PRICE=162975; QUANTITY=1; OPERATION=B; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011445001; PRICE=163130; QUANTITY=1; OPERATION=B; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
TRANS_ID=011800002; PRICE=157480; QUANTITY=1; OPERATION=S; CLASSCODE=SPBFUT; ACTION=NEW_ORDER; TYPE=L; SECCODE=RIZ0;
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Хм. Проверь тестером робот пропустил сигналы покупки или исполнил лишние сигналы продажи?

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



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

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

Ох, немного перепутал. Проблемы с немного более сложным кодом в условии входа. Может в этом дело? Хоты косяки то вроде только с выходом из позиции.

Условие buy или short , сразу по нескольким пересечениям, вот так:

Buy = Hold( Cross(EMA(Close, 11), EMA(Close, 22)), 5 ) AND Cross (EMA(Close, 15), EMA(Close, 25))
OR Ref (Cross(EMA(Close, 11), EMA(Close, 22)),-1) AND Cross(EMA(Close, 15), EMA(Close, 25));

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

Бэктестер показывает всё как надо. Сейчас глянул сканер, входы идут по условию пересечения первых скользящих, а условия вторых скользящих игнорируются. Т.е. в сканере много не нужных входов\выходов. Странно, но в риале робот входит как надо, а вот там где срабатывает стоп он выходит и по пересечению скользящих. Т.е. как будто не видит, что стоп уже сработал.

Единственное, не знаю почему, но если полный код робота закидываю, не работает ни бэктестер ни сканер. Так что я тестил только код системы без Equity и тела робота. Может что-то не так делаю?
Посмотреть профиль Отправить личное сообщение Отправить e-mail
000
Site Admin


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

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

Arahan писал(а):

Единственное, не знаю почему, но если полный код робота закидываю, не работает ни бэктестер ни сканер. Так что я тестил только код системы без Equity и тела робота. Может что-то не так делаю?

Вот тут собака и порылась. Smile
Именно функция Equity определяет стработал стоп или нет и в случае если сработал не пропускает обычный выход....

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen