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



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

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

Приветствую. Написал индикатор для недельного графикка. Пробую его отобразить на дневном графике и получается какой-то косяк: столбцы гистограмма окрашиваются некоректно. Хотя на недельном графике все ок. Вопрос почему?

Формула:
Код:
//MACD histogram недельный

TimeFrameSet(inWeekly);
r1 = Param( "Fast avg", 12, 2, 200, 1 );
r2 = Param( "Slow avg", 26, 2, 200, 1 );
r3 = Param( "Signal avg", 20, 2, 200, 1 );

ml = MACD(r1, r2);
sl = Signal(r1,r2,r3);
Hist = ml-sl;
TimeFrameRestore();

MACDup = Hist>Ref(Hist,-1);
MACDdown = Hist<Ref(Hist,-1);

BarColor = IIf(MACDup,colorGreen,IIf(MACDdown,colorRed,colorBlue));

//растягиваем график
Plot(TimeFrameExpand( Hist,inWeekly),"histogram MACD",BarColor,styleHistogram);
Plot(0, "0", colorBlack);

//вход-выход


Buy = TimeFrameExpand(Hist>Ref(Hist,-1), inWeekly);
Sell = 0;
ApplyStop(stopTypeTrailing,stopModePoint,ATR(14)*3,False);


А на дневном графике получается так:
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

Блин. Не знаю как объяснить в двух словах...
В общем когда ты выходишь из недельного фрейма у тебя недельный макди получается как бы сгруппированный вправо на базовом фрейме. Потом ты определяешь цвет и он получается привязан к базовому фрейму. Соответственно когда растягиваешь график цвет не растягивается а остается там где и был. Вот и получается фигня.
Надеюсь понятно объяснил.

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



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

СообщениеДобавлено: Чт Окт 18, 2012 8:59 am Ответить с цитатой Вернуться к началу

спасибо за ответ. То что я понял и вдогонку вопросы:
1. Правильная ли формула. Цель, чтобы при инвестиции на дневках система не переставала считать MACD на недельном графике.
2. Если косяк с цветами, можно ли как-то эти цвета тоже растянуть. Rolling Eyes
3. Уже с другой оперы - пробую оптимизировать MACD. Задаю параметры Optimize, даю Analisis. И в ответ получаю 1000 одинаковых результатов в независимости от длини MACD. Где косяк? Вот формула:

Код:
FA=Optimize("FA",26,12,50,2);
SA=Optimize("SA",50,26,200,2);
SS=Optimize("SS",20,9,20,5);

TimeFrameSet(inWeekly);
r1 = Param( "Fast avg", FA);
r2 = Param( "Slow avg", SA );
r3 = Param( "Signal avg", SS );

ml = MACD(r1, r2);
sl = Signal(r1,r2,r3);
Hist = ml-sl;
TimeFrameRestore();
Buy = TimeFrameExpand(Hist>Ref(Hist,-1), inWeekly)AND fi<0;
Sell = 0;
ApplyStop(stopTypeTrailing,stopModePoint,ATR(14)*3,False);
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

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

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

r1=Optimize("FA",26,12,50,2);
r2=Optimize("SA",50,26,200,2);
r3=Optimize("SS",20,9,20,5);

TimeFrameSet(inWeekly);
  ml = MACD(r1, r2); 
  sl = Signal(r1,r2,r3);
  Hist = ml-sl;
TimeFrameRestore();
Hist = TimeFrameExpand(Hist, inWeekly)

Buy = Hist > Ref(Hist,-1) AND fi < 0; // не знаю кто такоая fi, в коде ее нет
Sell = 0;
ApplyStop(stopTypeTrailing,stopModePoint,ATR(14)*3,False);

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


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

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

pylyp писал(а):

2. Если косяк с цветами, можно ли как-то эти цвета тоже растянуть. Rolling Eyes

Конечно можно. Точно так же через expand.

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



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

СообщениеДобавлено: Пт Окт 19, 2012 11:47 am Ответить с цитатой Вернуться к началу

С оптимизацией получилось. Спасибо.

Что касается колористики. Вставил вот так:

Код:
r1=Optimize("FA",26,12,50,2);
r2=Optimize("SA",50,26,200,2);
r3=Optimize("SS",20,9,20,5);

TimeFrameSet(inWeekly);
  ml = MACD(r1, r2); 
  sl = Signal(r1,r2,r3);
  Hist = ml-sl;
TimeFrameRestore();
Hist = TimeFrameExpand(Hist, inWeekly);

MACDup=Hist>Ref(Hist,-1);
MACDdown=Hist<Ref(Hist,-1);

TimeFrameSet(inWeekly);
barcolor=IIf(MACDup,colorGreen, IIf(MACDdown,colorRed,colorBlue));
TimeFrameRestore();

Plot(TimeFrameExpand(Hist,inWeekly),"hist",TimeFrameExpand(barcolor,inWeekly),styleHistogram);



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


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

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

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

SetBarsRequired(sbrAll, sbrAll);

r1=Optimize("FA",26,12,50,2);
r2=Optimize("SA",50,26,200,2);
r3=Optimize("SS",20,9,20,5);

TimeFrameSet(inWeekly);
  ml = MACD(r1, r2); 
  sl = Signal(r1,r2,r3);
  Hist = ml-sl;
  MACDDir = IIf(Hist > Ref(Hist,-1), 1, IIf(Hist < Ref(Hist,-1), -1, 0));
  barcolor = IIf(MACDDir == 1 , colorGreen, IIf(MACDDir == -1, colorRed, colorBlue));
TimeFrameRestore();
Hist = TimeFrameExpand(Hist, inWeekly);
barcolor = TimeFrameExpand(barcolor,inWeekly);


Plot(Hist, "hist", barcolor, styleHistogram);

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


 Перейти:   



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


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

File Attachment © by Meik Sievertsen