Jak można programowo nałożyć dwa wskaźniki (oddzielne okno) o różnych skalach .
Nakładam przykładowo ręcznie na wskaźnik ATR o skali 0.005 do 0.00001 ,wskaźnik RSI o wpisanych poziomach 30 i 70 i jest ok . Zachowany jest prawidłowy widok obu wskaźników na jednym wykresie .
Gdy chcę to zrobić w kodzie to mi nie wychodzi z powodu różnych zakresów danych w buforach ATR i RSI .Gdy wyświetla się bufor RSI to wskaźnik z mniejszą skalą będzie niewidoczny z powodu nie dostosowania zakresu (gdzieś się tam plącze w dole okna ).
W jaki sposób można to wykonać [?], próbowałem funkcji różnych xxOnArray ale też one nie wykonają skalowania do jednego okna wskaźników o różnych zakresach.
Nakładanie wskaźników
Nakładanie wskaźników
Nie spiesz się , zawsze zdążysz stracić .
mozesz sprobowac przy pomocy:
#property indicator_minimum 0
#property indicator_maximum 100
lub po prostu przeskaluj zakres jednego ze wskaznikow tak, zeby zakresem pokrywalo sie z tym drugim.
czyli np.: jezeli pierwszy ma zakres od 0 do 1 a ten drugi od 0 do 100 to albo wynik tego pierwszego wymnoz razy 100 przed wizualizacja na wykresie, albo tego drugiego podziel przez 100.
#property indicator_minimum 0
#property indicator_maximum 100
lub po prostu przeskaluj zakres jednego ze wskaznikow tak, zeby zakresem pokrywalo sie z tym drugim.
czyli np.: jezeli pierwszy ma zakres od 0 do 1 a ten drugi od 0 do 100 to albo wynik tego pierwszego wymnoz razy 100 przed wizualizacja na wykresie, albo tego drugiego podziel przez 100.
Hym , MT4 wykonuje to pewnie trochę inaczej .Np MACD przyjmuje różne wartości ,które czasami przesuwają "wizualnie" poziomy 30 i 70 RSI względem brzegów (Top,Bottom) okna .Og. poziomy obu wskaźników nie są do końca sztywno zahaczone w oknie tylko pływają trochę względem siebie .Przeliczanie na piechotę wartości buff nie da takiego efektu bo proporcje będą stałe .
Właściwie nie wiem czy to dobrze czy źle .
Właściwie nie wiem czy to dobrze czy źle .
Nie spiesz się , zawsze zdążysz stracić .
Jeśli zależy Ci na identycznej skali dwóch różnych wskaźników o różnej skali to musisz jeden z nich (albo oba) przeskalować.
- normalizacja
- standaryzacja
przeskalowania np do wartości <0,1> można wykonać tak:
Si=(Xi-Min(X))/(Max(X)-Min(X)) // mam nadzieje że mi się nie pomieszało
Oczywiście min i max liczysz z jakiegoś wybranego przedziału - np 100 świec
- normalizacja
- standaryzacja
przeskalowania np do wartości <0,1> można wykonać tak:
Si=(Xi-Min(X))/(Max(X)-Min(X)) // mam nadzieje że mi się nie pomieszało
Oczywiście min i max liczysz z jakiegoś wybranego przedziału - np 100 świec
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..