Скачать MetaTrader 5

математическая канонизация - страница 2

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
saxsten
49
saxsten  
granit77 писал(а) >>

Ну, по сравнению с 2006 годом он и в русском прибавил. Но жаргонизмы усваиваются быстрее, они более точно выражают эмоциональный посыл.

Да, это верно,жаргонизмы усваиваются быстрее !

Следующий шаг которого нужно сделать,прибавить во верхного индикатора линия валюты

Для этого нужно знать диапазон изменения TSI

На верно это где то : -40 + 40,но кто знает, и к этому диапазону надо " прилепить" обработанной короткий (на 1 бар) мувинг

Есть у кого ни будь идеи ?

saxsten
49
saxsten  

К вопросу нормировки какая то валютная функция я решил так

Простое отношение ее моментное значения на долью мудны мувинг /мувинг на тоже самая валюта/ и все валюты и индексы нормирироватся сами к себе.

Вот как

V= iMA(0,0,1,0,MODE_LWMA,PRICE_CLOSE,i)/iMA(0,0,120,0,MODE_LWMA,PRICE_CLOSE,i)

Ето доволно мощным метод Заранне подсказываю идею

Всем известно что идет корелации на движения индексов Дау, Дакс,Никей и тд оказывает влияние на движения соответвуищих валюты для следующем дня

К примеру если прежного дня движение Дау было верх а движение даксом было к ниже, то ожидаем на сегодня короткое евро .

И ето все

Кто интересно может создать индикатор сравнивающей нормирование индексы Дау, Дакс

Алексей Тарабанов
7326
Алексей Тарабанов  
saxsten:

К вопросу нормировки какая то валютная функция я решил так

Простое отношение ее моментное значения на долью мудны мувинг /мувинг на тоже самая валюта/ и все валюты и индексы нормирироватся сами к себе.

Вот как

V= iMA(0,0,1,0,MODE_LWMA,PRICE_CLOSE,i)/iMA(0,0,120,0,MODE_LWMA,PRICE_CLOSE,i)

Ето доволно мощным метод Заранне подсказываю идею

Всем известно что идет корелации на движения индексов Дау, Дакс,Никей и тд оказывает влияние на движения соответвуищих валюты для следующем дня

К примеру если прежного дня движение Дау было верх а движение даксом было к ниже, то ожидаем на сегодня короткое евро .

И ето все

Кто интересно может создать индикатор сравнивающей нормирование индексы Дау, Дакс


Ничего, если я тебя утром потревожу?
zoritch
4326
zoritch  
ни хрена себе за пять лет решил проблему нормировки... :-)))
Alexey Oreshkin
5564
Alexey Oreshkin  
А что мешает использовать стандартную формулу для нормирования в единичный диапазон: (Get_Price-min)/(max-min) ?
Nikolay Demko
12559
Nikolay Demko  
saxsten:
Кто то не подскажет Каким математическим способым сможем сравнивать стойностих двух вероятностных променл. (,к примеру EUR/USD и GBP/USD ) так что оба были в одном диапазон измерения Конечно самой простой метод : умножить на каким то коефициентом, но ето не годиться,посколько при движения Рынка коефициентам всегда надо поменят и так далее. Индикаторы RSI и DeMarker калиброванные в диапазоне 0-1 и 0-100,так что, разве неьзя ето сделаь и с графиком валюты? Заранне спасибо Вам !

Берём первую разность, разность соседних баров (это может быть разность Close или HL/2, или любая другая по выбору),

находим статистический средний размер изменения (по модулю, без учёта знака),

делим ряд разностей на этот средний размер,

строим кумулятивчик (каждое последующее значение есть предыдущее значение плюс приращение) обоих сравниваемых рядов с начальной точкой ноль.

Как то так.

Но всё равно ряды разойдутся.

ЗЫ Ах да, нужно не забыть сделать синхронизацию баров по времени, а то в MQ-барах есть пропуски и они не всегда совпадают на всех парах.

saxsten
49
saxsten  
zoritch:
ни хрена себе за пять лет решил проблему нормировки... :-)))

Нет я ето решил уже 5 лет тому назад просто вчера случайно попалась в руки старая ветка

Соотношеншие короткого и медленнога периоды двух мувинг должны быт больше 100 Таким образом обезпечивяем зараннее дефиниранной ошибки измерения в рамках 1 % по сравнение с реалное движение цены

Поверте мне, то что я предлагаю проверенной метод Все остальное не то что и не годится,но все таки доволно сложнее и непригодное

Ну как хотите У каждого свое мнение конечно

saxsten
49
saxsten  
Urain:

Берём первую разность, разность соседних баров (это может быть разность Close или HL/2, или любая другая по выбору),

находим статистический средний размер изменения (по модулю, без учёта знака),

делим ряд разностей на этот средний размер,

строим кумулятивчик (каждое последующее значение есть предыдущее значение плюс приращение) обоих сравниваемых рядов с начальной точкой ноль.

Как то так.

Но всё равно ряды разойдутся.

ЗЫ Ах да, нужно не забыть сделать синхронизацию баров по времени, а то в MQ-барах есть пропуски и они не всегда совпадают на всех парах.

Спосибо вам Urain за ответ

Я этого уже делал Все таки у меня было 5 лет

Конечно идея прекрасна

По отношение синхронизация баров для меня это дело сложнее

Вот к примеру подобны код индикатора сделаным мне в прошлое :

//-----------------------------------------------------------------------------------------------------

//+------------------------------------------------------------------+
//| ! H L PROBIV.mq4
//| sax|
//| White Aqua Red Khaki LawnGreen White |
//+------------------------------------------------------------------+
#property copyright "sax"
#property link ""

#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 White
#property indicator_color2 Aqua
#property indicator_color3 LawnGreen
#property indicator_color4 Khaki


#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 1
#property indicator_width4 1

extern double k=1.2;
extern int p=35, Bar=500,i;
double B[],S[],L[],H[];

//=========== r=MarketInfo("EURUSD",MODE_SPREAD);

int init()
{ IndicatorBuffers(6);

SetIndexBuffer(0,B);
SetIndexLabel (0,"B");
SetIndexStyle (0,DRAW_ARROW);
SetIndexArrow (0,241);

SetIndexBuffer(1,S);
SetIndexLabel (1,"S");
SetIndexStyle (1,DRAW_ARROW);
SetIndexArrow (1,242);

SetIndexBuffer(2,L);
SetIndexLabel (2,"L");
SetIndexStyle (2,DRAW_LINE);

SetIndexBuffer(3,H);
SetIndexLabel (3,"H");
SetIndexStyle (3,DRAW_LINE);



return(0);}
int deinit() { return(0); }
//===============PRICE_WEIGHTED==,MODE_EMA,PRICE_OPEN,
int start(){RefreshRates();


double Poin; if(Digits<=3) Poin=0.01; else Poin=0.0001;



{for ( i = Bar; i >=0; i--)
L[i]= 0.387979772007*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i)
+0.3118827399907*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i+1)
+0.1959121061086*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i+2)
+0.0885678813205*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i+3)
+0.02198901715722*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i+4)
-0.00633151658364*iMA(NULL,0,p,0,MODE_LWMA,PRICE_LOW,i+5);}

{for ( i = Bar; i >=0; i--)
H[i]= 0.387979772007*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i)
+0.3118827399907*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i+1)
+0.1959121061086*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i+2)
+0.0885678813205*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i+3)
+0.02198901715722*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i+4)
-0.00633151658364*iMA(NULL,0,p,0,MODE_LWMA,PRICE_HIGH,i+5);}

//=====.
{ for(i=Bar; i>=0; i--)
if( High[i]-Low[i]> (H[i]-L[i]) && Close[i]-Open[i]>k*(H[i]-L[i])

) B[i]=Open[i] ;else B[i]=0;}
//======================&& MathAbs(R[i]-R[i+1])>r*Poin
{ for(i=Bar; i>=0; i--)
if(High[i]-Low[i]> (H[i]-L[i]) && Open[i]-Close[i]>k*(H[i]-L[i])

) S[i]=Open[i] ;else S[i]=0;}
//============ ====================

{ for(i=Bar; i>=0; i--) L[i]=0 ;}
{ for(i=Bar; i>=0; i--) H[i]=0 ;}


return(0); }

//---------------------------------------------------------------------------------------------------------------------------

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий