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





СообщениеДобавлено: Чт Фев 21, 2008 11:53 am Ответить с цитатой Вернуться к началу

Привет!

Добавил стоп
ApplyStop( stopTypeNBar, stopModeBars, 5 );
Но он работает и в позиции long и в позиции Short при прогоне long&Short,
а нужно только чтобы срабатывал когда система была в позиции Short.
как это сделать?
000
Site Admin


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

СообщениеДобавлено: Чт Фев 21, 2008 3:32 pm Ответить с цитатой Вернуться к началу

Попробуй так
Код:

ApplyStop( stopTypeNBar, stopModeBars, IIf(BarsSince(Buy) > BarsSince(Short), 5, 10000) );

Суть в следующем. Если последний сигнал был на шорт, то n-баровый стоп будет 5, в противном случае 10000 (очень далекий)

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



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

СообщениеДобавлено: Вт Май 13, 2008 3:51 pm Ответить с цитатой Вернуться к началу

Привет Олег, подскажи у меня по стоп лоссу при закрытии лонга рисуется стрелка по условию PlotShapes(IIf(Sell==2,shapeDownTriangle,0),colorRed,0,SellPrice);
, а вот при закрытии шорта по стопу по этомы условию ничего не появляется PlotShapes(IIf(Buy==2,shapeUpTriangle,0),colorGreen,0,C);
Чего неправильно делаю? Там где должен быть зеленый триугольник рисуется стрелка с условия COVER
Посмотреть профиль Отправить личное сообщение
Сергей



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

СообщениеДобавлено: Вт Май 13, 2008 4:31 pm Ответить с цитатой Вернуться к началу

Сергей писал(а):
Привет Олег, подскажи у меня по стоп лоссу при закрытии лонга рисуется стрелка по условию PlotShapes(IIf(Sell==2,shapeDownTriangle,0),colorRed,0,SellPrice);
, а вот при закрытии шорта по стопу по этомы условию ничего не появляется PlotShapes(IIf(Buy==2,shapeUpTriangle,0),colorGreen,0,C);
Чего неправильно делаю? Там где должен быть зеленый триугольник рисуется стрелка с условия COVER


Вопрос снимается, ответ найден)
Посмотреть профиль Отправить личное сообщение
Sergiovy



Зарегистрирован: 03.03.2008
Сообщения: 180
Откуда: Мурманск

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

Сергей писал(а):
Привет Олег, подскажи у меня по стоп лоссу при закрытии лонга рисуется стрелка по условию PlotShapes(IIf(Sell==2,shapeDownTriangle,0),colorRed,0,SellPrice);
, а вот при закрытии шорта по стопу по этомы условию ничего не появляется PlotShapes(IIf(Buy==2,shapeUpTriangle,0),colorGreen,0,C);
Чего неправильно делаю? Там где должен быть зеленый триугольник рисуется стрелка с условия COVER

Тоже столкнулся с этой проблемой, Странно, ведь всем же понятно что движения лонг и шорт разные, почему же стопы одни и те же?
Пробовал так: но не считает профит...
Стопы для лонга:
ApplyStop( stopTypeLoss, stopModePoint, IIf(BarsSince(Short) > BarsSince(Buy), Optimize("Lo2St",500,250,750,250), 20000),1,False,0);
ApplyStop( stopTypeProfit, stopModePoint, IIf(BarsSince(Short) > BarsSince(Buy), Optimize("Lo2TP",3000,1000,4000,1000), 20000),1,False,0);

Это стопы для шорта
ApplyStop( stopTypeLoss, stopModePoint, IIf(BarsSince(Buy) > BarsSince(Short), Optimize("Sh8St",500,250,750,250), 20000),1,False,0);
ApplyStop( stopTypeProfit, stopModePoint, IIf(BarsSince(Buy) > BarsSince(Short), Optimize("Sh8TP",3000,1000,4000,1000), 20000),1,False,0);

Ловит убытки 20000 п. Может есть другая идея?
Нужен независимый оптимизируемый стоп для лонга и шорта.
Чтобы они работали вместе.
Ну, еще в тестере чтобы можно было переключать лонг и шорт, -
сейчас надо ручками комментировать неработающую часть...
Иначе стопы все равно ловит чужие.

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

бывали ли такие нестабильности у кого еще?

_________________
"Единственная pабота, достойная нас, — pабота над собой". Шон де Уоppен
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Использование разных стопов (насколько я знаю) возможно только в вариантах системы когда появление обратного сигнала на вход закрывает текущую позицию (активирована опция Reverse entry signal forces exit)
Тогда можно просто определить текущую позицию в коде. Например при помощи перекдючателя
Код:

position = Flip(Buy, Short);

и далее в зависимости от значения position устанавливаем размеры стопов. Если position == 1, то длинная позиция, если 0, то короткая.

Вообще разберусь с этой проблеммой и если есть универсальный способ решения, то обязательно сообщу.

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



Зарегистрирован: 03.03.2008
Сообщения: 180
Откуда: Мурманск

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

000 писал(а):
Использование разных стопов (насколько я знаю) возможно только в вариантах системы когда появление обратного сигнала на вход закрывает текущую позицию (активирована опция Reverse entry signal forces exit)
Тогда можно просто определить текущую позицию в коде. Например при помощи перекдючателя
Код:

position = Flip(Buy, Short);

и далее в зависимости от значения position устанавливаем размеры стопов. Если position == 1, то длинная позиция, если 0, то короткая.

Вообще разберусь с этой проблеммой и если есть универсальный способ решения, то обязательно сообщу.

// Так должно сработать
Код:

Buy1 = Cross(MA(C,10),MA(C,20));
Loss = 0.002;
Prof = 0.002;

Sell1 = Cross(MA(C,20),MA(C,10));
Loss = IIf(Sell1, 0.0015, Loss);
Prof = IIf(Sell1, 0.0025, Loss);

EndDay= Hour() > Ref(Hour(), 1);
Buy2 = EndDay;

Loss = IIf(Buy2, 0.001, Loss);
Prof = IIf(Buy2, 0.001, Prof);

Buy = Buy1 OR Buy2;
Sell = Sell1;

ApplyStop(1, 2, Prof, 1, False);
ApplyStop(0, 2, Loss, 1, False);

Вот тут некто "ООО" Smile - выдал идею, которую похоже можно использовать... Если получится - отпишусь.

_________________
"Единственная pабота, достойная нас, — pабота над собой". Шон де Уоppен
Посмотреть профиль Отправить личное сообщение
Sergiovy



Зарегистрирован: 03.03.2008
Сообщения: 180
Откуда: Мурманск

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

Разные стопы для лонга и шорта.
Можно оптимизировать...
(В Примере константы)

Loss=1500;
Profit=5500;
Loss= IIf(Buy,500,Loss);
Profit=IIf(Buy,2000,Profit);

ApplyStop( stopTypeLoss, stopModePoint, Loss, 1, False ,0 );
ApplyStop( stopTypeProfit, stopModePoint, Profit, 1, False ,0 );

_________________
"Единственная pабота, достойная нас, — pабота над собой". Шон де Уоppен
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Угу. Это только если стопы не изменяемые (volatile = False)

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


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

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

Если при задании стопов при помощи ApplyStop задаются постоянные значения (volatile = False), то стопы с течением времени не меняются и остаются равными заданным в момент открытия. Поэтому в случае volatile = False можно задавать разные стопы для Long и Short.
Удобно это делать при помощью кончтрукции
Код:

ApplyStop( type, mode, IIf(Buy, Buy_amount, Short_amount), exitatstop, volatile = False)

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



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

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

а если изменяемые?... Confused

и вообще, где указываются значения функций по умолчанию?
я так понимаю, в Applystop volatile = false по умолчанию и мне опять пересчитывать надо системку...
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen