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


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

СообщениеДобавлено: Вт Ноя 12, 2013 8:22 am Ответить с цитатой Вернуться к началу

У тебя шорт на открытии если на прошлом баре Open >= Close
Стоп если цена ушла выше 0.02 цены входа (т.е. цены открытия)

Ну. Соответственно запрети шорт если High > Open + 0.02

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



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

СообщениеДобавлено: Вт Ноя 12, 2013 2:51 pm Ответить с цитатой Вернуться к началу

000 писал(а):
У тебя шорт на открытии если на прошлом баре Open >= Close
Стоп если цена ушла выше 0.02 цены входа (т.е. цены открытия)

Ну. Соответственно запрети шорт если High > Open + 0.02


да эти условия тут, они так, чтоб на минутках стопы отработать.

сама система иная, она может как выйти на следующем баре, так и месяцами в позе сидеть. подобным условием (High > Open + 0.02) я могу запретить вхождение в позу сразу, после того как сработал стоп, но на следующем баре система может снова открыть позу, т.к. первоначальные условия на покупку могут ещё работать. если использовать ExRem, тоо система после стопа будет ждать, пока пройдёт системных сигнал на закрытие позы и только потом будет открывать новую. понимаешь, о чём я?

пока, действенная мысль пришла мне в голову такая: разделить сигналы по номерам, short - 1, cover - 2, stop - 3 и писать номера/сигналы в txt-файл. далее, соответственно, проверять, чтоб после стопа не исполнять сигналы short, пока cover не пройдёт.

другого решения я пока не вижу.

ExRem, кстати, не рекомендую юзать в роботах. если закрыть ами после срабатывания стопов и снова запустить, система снова может стать в позу, хотя не должна по логике.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Ноя 12, 2013 3:27 pm Ответить с цитатой Вернуться к началу

теперь понял. Это тебе надо цикл городить.
Или попробуй через Flip()

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



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

СообщениеДобавлено: Вт Ноя 12, 2013 4:44 pm Ответить с цитатой Вернуться к началу

000 писал(а):
теперь понял. Это тебе надо цикл городить.
Или попробуй через Flip()


попробую сначала через проверку в текстовом файле реализовать. не нравится, что робот после рестарта может открыть позу не по системе.
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



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

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

хочу, чтооб так:
Код:

if ( abs( CashToShort_xxx ) > Foreign( Ticker2, "O" ) )

ами ругается на массив в выражении.
делаю так:
Код:

balance_trigger = IIf ( abs( CashToShort_xxx ) > Foreign( Ticker2, "O" ), 1, 0 );
if ( balance_trigger == 1 )

всеравно ругается.
даже так ругается:
Код:

balance_trigger = IIf ( abs( CashToShort_yyy ) > Foreign( Ticker1, "O" ), True, False );
if ( balance_trigger )


как быть с этим сравнением?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Разумеется он будет ругаться. После функции IIf получается массив а функция if работает только с константами. А что делать? Смотря что надо и для чего. Если робот и нужно последнее значение, то LastValue(balance_trigger) даст константу.
Или balance_trigger[BarCount - 1]

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



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

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

000 писал(а):
Разумеется он будет ругаться. После функции IIf получается массив а функция if работает только с константами. А что делать? Смотря что надо и для чего. Если робот и нужно последнее значение, то LastValue(balance_trigger) даст константу.
Или balance_trigger[BarCount - 1]


тоже пытался через LastValue решить, но ами продолжал ругаться. спасибо за [BarCount - 1] Smile
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



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

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

пишу вывод данных в АА в поле анализов.
я могу 2 строчки сам вписать туда вручную?

чтоб как здесь было, только 2 строки с 2-мя разными инструментами соответственно:

Image
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Число строк зависит от числа анализируемых баров. Для робота надо в Range ставить n last quotation 1. Тогда для каждой бумаги в apply to будет одна строка.

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



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

СообщениеДобавлено: Вс Дек 15, 2013 1:41 am Ответить с цитатой Вернуться к началу

000 писал(а):
Число строк зависит от числа анализируемых баров. Для робота надо в Range ставить n last quotation 1. Тогда для каждой бумаги в apply to будет одна строка.


я беру данные разных инструментов через Foreign, а не типа:
Код:

if (Name() == "SBER") {...}


вот нельзя вторую строку с другим инструментом как-то самому создать? а то структуру системы менять прийдётся.

edit: хотя на крайняк, всё и в одну впихнуть можно, но хотелось покрасивее.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Два вопроса.
1. Сколько у тебя бумаг торгуется
2. Сколько бумаг стоит в Apply to

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



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

СообщениеДобавлено: Вс Дек 15, 2013 2:23 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Два вопроса.
1. Сколько у тебя бумаг торгуется
2. Сколько бумаг стоит в Apply to


1. две
2. current, т.е. одна любая.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вс Дек 15, 2013 5:48 pm Ответить с цитатой Вернуться к началу

Тогда поставь n last quotation = 2. Будет 2 строки. Только первую колонку никак не убрать, в ней будет один и тот же current символ. И следи чтобы лишние сигналы не пролезли.

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



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

СообщениеДобавлено: Чт Дек 19, 2013 2:57 pm Ответить с цитатой Вернуться к началу

с каким логическим операторами ами должен работать в условиях циклов? AND, OR, NOT или &&, || , !?

вижу в нете каждый пишет как хочет.
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Чт Дек 19, 2013 5:26 pm Ответить с цитатой Вернуться к началу

Потому, что это одно и тоже.
Можно писать так, как удобнее.

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen