Автор |
Сообщение |
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
У тебя шорт на открытии если на прошлом баре Open >= Close
Стоп если цена ушла выше 0.02 цены входа (т.е. цены открытия)
Ну. Соответственно запрети шорт если High > Open + 0.02 |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
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
|
теперь понял. Это тебе надо цикл городить.
Или попробуй через Flip() |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
000 писал(а): |
теперь понял. Это тебе надо цикл городить.
Или попробуй через Flip() |
попробую сначала через проверку в текстовом файле реализовать. не нравится, что робот после рестарта может открыть позу не по системе. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
хочу, чтооб так:
Код: |
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
|
Разумеется он будет ругаться. После функции IIf получается массив а функция if работает только с константами. А что делать? Смотря что надо и для чего. Если робот и нужно последнее значение, то LastValue(balance_trigger) даст константу.
Или balance_trigger[BarCount - 1] |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
000 писал(а): |
Разумеется он будет ругаться. После функции IIf получается массив а функция if работает только с константами. А что делать? Смотря что надо и для чего. Если робот и нужно последнее значение, то LastValue(balance_trigger) даст константу.
Или balance_trigger[BarCount - 1] |
тоже пытался через LastValue решить, но ами продолжал ругаться. спасибо за [BarCount - 1] |
|
|
Посмотреть профиль Отправить личное сообщение |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
пишу вывод данных в АА в поле анализов.
я могу 2 строчки сам вписать туда вручную?
чтоб как здесь было, только 2 строки с 2-мя разными инструментами соответственно:
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Число строк зависит от числа анализируемых баров. Для робота надо в Range ставить n last quotation 1. Тогда для каждой бумаги в apply to будет одна строка. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
000 писал(а): |
Число строк зависит от числа анализируемых баров. Для робота надо в Range ставить n last quotation 1. Тогда для каждой бумаги в apply to будет одна строка. |
я беру данные разных инструментов через Foreign, а не типа:
Код: |
if (Name() == "SBER") {...}
|
вот нельзя вторую строку с другим инструментом как-то самому создать? а то структуру системы менять прийдётся.
edit: хотя на крайняк, всё и в одну впихнуть можно, но хотелось покрасивее. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Два вопроса.
1. Сколько у тебя бумаг торгуется
2. Сколько бумаг стоит в Apply to |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
000 писал(а): |
Два вопроса.
1. Сколько у тебя бумаг торгуется
2. Сколько бумаг стоит в Apply to |
1. две
2. current, т.е. одна любая. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Тогда поставь n last quotation = 2. Будет 2 строки. Только первую колонку никак не убрать, в ней будет один и тот же current символ. И следи чтобы лишние сигналы не пролезли. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
MrDrJOKER
Зарегистрирован: 22.06.2009
Сообщения: 489
|
с каким логическим операторами ами должен работать в условиях циклов? AND, OR, NOT или &&, || , !?
вижу в нете каждый пишет как хочет. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Потому, что это одно и тоже.
Можно писать так, как удобнее. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|