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


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

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

Ерунда какая то. Скорее всего на картинке код совсем не тот, что приведен в примере.
В коде никакого пересечения нет вовсе. Нет там функции Cross(). Покупка должна была повторится сразу после срабатывания стопа по условию Buy = H >= BuyLevel & L<BuyLevel; еще в первый день на картинке...

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



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

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

kosbar писал(а):
Амиброкеровец писал(а):
Немного доработал
+ убрал лишние сигналы
+ добавил стрелочки
Твоя система дала везде отрицательные результаты, в тестере после оптимизации везде в минус.
Или я что-то не так делаю!?


При тестировании дает неплохие результаты, но время всех сделок 23:50. Дневные графики. Вроде на открытии заходим.
Что не так ?
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Амиброкеровец



Зарегистрирован: 30.12.2008
Сообщения: 214
Откуда: Воображляндия

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

Хочу протестировать на пробой диапазона второй половины вчерашнего дня, например для ФОРТСа с 17-00 до конца дня.

Помогите определить сам диапазон:

DeH = TimeFrameGetPrice( "H", ???? ,??? ,expandFirst);//Максимум вчерашнего вечера
DeL = TimeFrameGetPrice( "L", ????,???,expandFirst);//минимум вчерашнего вечера

ERange = DH - DL; // вчерашний вечерний диапазон

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


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

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

Код:

SetChartOptions(0, chartShowDates);

eveningBegin = Hour() >= 17 AND Ref(Hour(), -1) < 17;
EndSeesion = Day() != Ref(Day(), 1);
Hi = ValueWhen(EndSeesion, HighestSince(eveningBegin, H));
Lo = ValueWhen(EndSeesion, LowestSince(eveningBegin, L));

Plot(Hi , "", colorRed);
Plot(Lo , "", colorRed);
Plot(C, "", colorBlack, styleCandle);

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



Зарегистрирован: 30.12.2008
Сообщения: 214
Откуда: Воображляндия

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

Супер. Олег, спасибо большое!

_________________
Антон
Посмотреть профиль Отправить личное сообщение
sas55



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

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

Добрый день!
Подскажите пожалуйста, как правильно объеденить эти условия :
1.
DH=TimeFrameGetPrice("H",inDaily,-1);
DL=TimeFrameGetPrice("L",inDaily,-1);
DOpen=TimeFrameGetPrice("O",inDaily,0);
Range=DH-DL;
BuyLevel=DOpen+Range*x;
ShortLevel=DOpen-Range*x;
Buy=H>=BuyLevel&L<BuyLevel&Cross(H,BuyLevel);
Short=L<ShortLevel>ShortLevel&Cross(ShortLevel,L);

BuyPrice=BuyLevel ;
ShortPrice=ShortLevel;
Sell=Cover=0;
ApplyStop(stopTypeLoss,stopModePoint,Range*y,1);
ApplyStop(stopTypeTrailing,stopModePoint,Range*z,1);
//ApplyStop(stopTypeProfit,stopModePoint,Range*q,1);

Equity(1,0);
Sell = Sell OR Short;
Cover = Cover OR Buy;
Equity(1,0);

2.
SetChartOptions(0, chartShowDates);
eveningBegin = Hour() >= 17 AND Ref(Hour(), -1) < 17;
EndSeesion = Day() != Ref(Day(), 1);
Hi = ValueWhen(EndSeesion, HighestSince(eveningBegin, H));
Lo = ValueWhen(EndSeesion, LowestSince(eveningBegin, L));
Идея такая :
покупка при открытии(первый уровень) далее перенос уровня на клиринг 17-00 который становится новым уровнем , далее снова открытие дня.

_________________
"Если мы выиграем на финансовом фронте, то мы выиграем всё" В.И.Ленин
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
MrDrJOKER



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

СообщениеДобавлено: Пт Июл 03, 2009 11:03 pm Ответить с цитатой Вернуться к началу

я вижу тут много людей увлекающихся трудами Ларри Вилльямса Smile

я вот проверил его пару его страенгий из книги ... и увидел, что приведённые там результаты не соответствуют действительности Confused Rolling Eyes Surprised

кто-нибудь ещё проверял? может это я у себя напутал иди данные цен не точные Rolling Eyes
Посмотреть профиль Отправить личное сообщение
tlt-vlad



Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва

СообщениеДобавлено: Сб Июл 04, 2009 8:57 pm Ответить с цитатой Вернуться к началу

Про какую книгу ведёте речь ??? У Ларри их несколько ...
Главную идею , которую я вынес ( лично для себя ) - трейдер это в первую очередь исследователь - на рынке есть скрытые закономерности , которые можно отыскать и использовать с выгодой для себя; каждую идею следует проверить (протестить ) на предмет стат. преимущества .
А про системы в книге - работают , если немного "подкрутить" ...
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



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

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

tlt-vlad писал(а):
Про какую книгу ведёте речь ??? У Ларри их несколько ...
Главную идею , которую я вынес ( лично для себя ) - трейдер это в первую очередь исследователь - на рынке есть скрытые закономерности , которые можно отыскать и использовать с выгодой для себя; каждую идею следует проверить (протестить ) на предмет стат. преимущества .
А про системы в книге - работают , если немного "подкрутить" ...

Image
речь о этой книге.
главная идея мне тоже ясна и интересна, но интереса ради проверив пару его систем и проведя несколько идентичных тестов, получаю совсем другие результаты.
Посмотреть профиль Отправить личное сообщение
tlt-vlad



Зарегистрирован: 19.01.2008
Сообщения: 162
Откуда: ... теперь Москва

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

Ну , а что Вы собственно ожидали , с момента выхода книги в свет прошло порядка 10 лет - рынки меняются ...
Посмотреть профиль Отправить личное сообщение
MrDrJOKER



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

СообщениеДобавлено: Вс Июл 05, 2009 10:37 pm Ответить с цитатой Вернуться к началу

tlt-vlad писал(а):
Ну , а что Вы собственно ожидали , с момента выхода книги в свет прошло порядка 10 лет - рынки меняются ...


дык я и тестил на тех же временных отрезках и тех же условиях Smile
Посмотреть профиль Отправить личное сообщение
kosbar



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

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

MrDrJOKER писал(а):
дык я и тестил на тех же временных отрезках и тех же условиях Smile
у него все тесты без комиссий, мож в этом проблема?
Посмотреть профиль Отправить личное сообщение ICQ Number
Nero Wolfe



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

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

Похоже одна из разновидностей обсуждаемой тут системы (взято с Паука), называется Dual Trust и по версии одного из амерских журналов считается самой лучшей для фьючей.

Код:
BDay=Optimize( "BDay", 10, 1, 16, 1 );
SDay=Optimize( "SDay", 10, 1, 16, 1 );
 Kl=0.5;


BuyRange=SellRange=0;

HHb = HHV(High,BDay);
HCb = HHV(Close,BDay);
LLb = LLV(Low,BDay);
LCb = LLV(Close,BDay);

HHs = HHV(High,SDay);
HCs = HHV(Close,SDay);
LLs = LLV(Low,SDay);
LCs = LLV(Close,SDay);



for( i =1+Max(BDay,SDay); i < BarCount; i++ )
{
if ((HHb[i-1] - LCb[i-1]) >= (HCb[i-1] - LLb[i-1])) BuyRange[i] = HHb[i-1] - LCb[i-1];
 else
BuyRange[i] = HCb[i-1] - LLb[i-1];


if ((HHs[i-1] - LCs[i-1]) >= (HCs[i-1] - LLs[i-1])) SellRange[i] = HHs[i-1] - LCs[i-1];
 else
SellRange[i] = HCs[i-1] - LLs[i-1];

};

BuyTrig = Kl*BuyRange;
SellTrig = Kl*SellRange;
ColorCh0=colorLightGrey;
Band_Top=O+BuyTrig;
Band_Bot=O-SellTrig;

Plot(Band_Top, "Band_Top", ColorCh0, 1);
Plot(Band_Bot , "Band_Bot", ColorCh0, 1);


Buy=Cover=Cross(H,Band_Top);BuyPrice=CoverPrice=Band_Top;

Short=Sell=Cross(Band_Bot,L); ShortPrice=SellPrice=Band_Bot;



PlotShapes( (Buy == 1) * shapeHollowUpArrow, colorBrightGreen, 0,BuyPrice);
PlotShapes( (Buy == sigScaleIn ) * shapeSmallUpTriangle, colorBrightGreen, 0,BuyPrice,1);
PlotShapes( (Buy == sigScaleOut) * shapeSmallDownTriangle, colorBrightGreen, 0,BuyPrice,1);
PlotShapes( (Short == 1) * shapeHollowDownArrow, colorRed, 0, ShortPrice);
PlotShapes( (Short == sigScaleIn ) * shapeSmallDownTriangle, colorRed, 0,ShortPrice,1);
PlotShapes( (Short == sigScaleOut ) * shapeSmallUpTriangle, colorRed, 0, ShortPrice,1);



PlotShapes( (Sell== 1) * shapeHollowDownArrow, colorBlue, 0,SellPrice);
PlotShapes( (Sell == 2) * shapeSmallCircle, colorBlue, 0,SellPrice,0);// stop
PlotShapes( (Sell == 5) * shapeSmallCircle, colorLightBlue, 0,SellPrice,0);// stop
PlotShapes( (Sell == 3) * shapeSquare, colorBlue, 0, SellPrice,0);// profit
PlotShapes( (Cover == 1) * shapeHollowUpArrow, colorOrange, 0, CoverPrice);
PlotShapes( (Cover == 2) * shapeSmallCircle, colorOrange, 0, CoverPrice,0);// stop
PlotShapes( (Cover == 3) * shapeSquare, colorOrange, 0,CoverPrice);// limit
PlotShapes( (Cover == 5) * shapeSmallCircle, colorLightOrange, 0,CoverPrice,0);// limit



тестировал ее на 5 минутках: без комиссий результаты ошеломляют - вот он грааль Smile, но стоит ввести хотя бы 0,01% комиссионных и все - система разваливается и сливает. Может в коде что не так, посмотрите, пожалуйста, старожилы АМИ Smile
Посмотреть профиль Отправить личное сообщение
Nero Wolfe



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

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

Взял систему с первой страницы этого топика
Код:
_SECTION_BEGIN("Lary_williams");
SetTradeDelays(0,0,0,0);
SetPositionSize(100, spsPercentOfEquity);//100 % эквити
SetOption("MaxOpenPositions", 1 );
x =Optimize("x", 0.6, 0.1, 1, 0.1);//определяет уровень buy/short, дефолт 60% от вчерашнего диапазона
DH = TimeFrameGetPrice( "H", inDaily,-1,expandFirst);//Максимум вчерашнего дня
DL = TimeFrameGetPrice( "L", inDaily,-1,expandFirst);//минимум вчерашнего для
DOpen = TimeFrameGetPrice( "O", inDaily, 0, expandFirst); // сегодняшнее открытие
Range = DH - DL; // вчерашний диапазон
BuyLevel = DOpen + Range*x;//уровень покупки
ShortLevel = DOpen - Range*x;//уровень шорта
Buy = H >= BuyLevel;// покупка если максимум выше уровня покупки
BuyPrice = Max(O,BuyLevel); // по цене уровня покупки
Short = L <= ShortLevel;
ShortPrice = Min(O,ShortLevel);
Sell = Short; Cover = Buy;
ApplyStop(stopTypeLoss, stopModePoint, Range/2, ExitAtStop = 1); // стоп 50% вчерашнего диаппазона
ApplyStop(stopTypeProfit, stopModePoint, Range/2, ExitAtStop = 1);
//титры//
Title = "Система на пробой вчерашнего диапазона цен и уровни входов \n"+
Name() + " " + Interval()/60 + " мин. " + Date()+"\n\n"+
"Range :"+Range+"\n"+ EncodeColor(colorBlue)+
"Buylevel: "+Buylevel+ "\n"+ EncodeColor(colorRed)+
"Shortlevel:"+Shortlevel+"\n"+ EncodeColor(color=20)+
"High: "+H+"\n"+
"Low: "+L+"\n"+
"Open: "+O+"\n"+
"Close: "+C;
//уровни//
Plot(C, "C", colorBlack, styleBar);
Plot(BuyLevel, "DH", colorBlue);
Plot(ShortLevel, "DL", colorRed);
Plot(dopen, "DO", colorGreen);

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

PlotShapes(IIf(Buy,shapeUpArrow,0),colorGreen,0,Graph0,-12);
PlotShapes(IIf(Short,shapeDownArrow,0),colorRed,0,Graph0,-24);
_SECTION_END();


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


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

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

Система внутри дневная. На периоде больше дневного тестировать смысла нет.
На разных внутридневных периодах результаты будут примерно похожи.

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen