Linia pozioma

O jezykach programowania w platformach i nie tylko.
tmkk90
Stały bywalec
Stały bywalec
Posty: 50
Rejestracja: 12 lip 2010, 19:13

Linia pozioma

Nieprzeczytany post autor: tmkk90 »

Witam, czy jest możliwość rysowanie linii poziomej, która zaczyna się danym punkcie na wykresie i kończy też w zadanym punkcie. Mój problem polega na tym że linia pozioma jest rysowana, tyle że 'leci' ona przez cały wykres :/

Awatar użytkownika
CoVal
Gaduła
Gaduła
Posty: 320
Rejestracja: 06 paź 2005, 22:45

Re: Linia pozioma

Nieprzeczytany post autor: CoVal »

tmkk90 pisze:Witam, czy jest możliwość rysowanie linii poziomej, która zaczyna się danym punkcie na wykresie i kończy też w zadanym punkcie. Mój problem polega na tym że linia pozioma jest rysowana, tyle że 'leci' ona przez cały wykres :/
tak, ale musisz ja narysowac nie jako horizontal line ale jako trend line i w parametrach okreslic wspolrzedne poczatku i konca linii.

tmkk90
Stały bywalec
Stały bywalec
Posty: 50
Rejestracja: 12 lip 2010, 19:13

Nieprzeczytany post autor: tmkk90 »

Yhymmm, rozumiem... ale mam jeszcze jeden problem, może ktoś będzie umiał mi pomóc. Linia ma być rysowana na danym poziomie, który zmienia się co 15 minut (akurat w tym przypadku z M15 korzystam). I chciałbym żeby po 15 minutach przestało mi rysować linię i zaczeło ją rysować na nowym poziomie i tak samo po kolejnych 15 minutach itd.

Kod: Zaznacz cały

Min = iLow(0,PERIOD_M15,1);

Kod: Zaznacz cały

ObjectCreate("poziom", OBJ_TREND, 0, datetime time1, double price1, datetime time2, double price2)
Za price1 i price2 podaje poziom Min, ale co z time 1 i time 2?[/code]

Awatar użytkownika
CoVal
Gaduła
Gaduła
Posty: 320
Rejestracja: 06 paź 2005, 22:45

Nieprzeczytany post autor: CoVal »

no przeciez time1 i time2 to parametry osi czasu....

czyli jako time1 podaj czas otwarcia swiecy od jakiej chcesz rysowac swoja linie trendu a jako time2 podaj TimeCurrent()

po kazdej kolejnej swiecy, kiedy chcesz wymalowac nowy trend, to zamiast tworzyc nowy obiekt, po prostu zmodyfikuj parametry biezacego obiektu...

chyba, ze chcesz zachowac stary na wykresie....

tmkk90
Stały bywalec
Stały bywalec
Posty: 50
Rejestracja: 12 lip 2010, 19:13

Nieprzeczytany post autor: tmkk90 »

Kod: Zaznacz cały

 

void start()
{
double Min;

Min = iLow(0,PERIOD_M15,1); 

ObjectCreate("poziom", OBJ_TREND, 0, Time[15], Min, TimeCurrent(), Min);

}
Chyba coś mi nie wychodzi, bo chciałbym żeby to działało w taki sposób, że: jak włączam strategie danego dnia, to już od pierwszego słupka (na minutowym) czyli od godziny 00:00 zaczęło mi rysować te poziomy. Teraz przy tym kodzie co podałem wyżej, zaczyna mi rysować od 15 słupków wstecz, i linia idzie juz do końca dnia (nie kończy się po 15 minutach :/) A no i odnośnie tego co napisał CoVal, to chciałbym żeby każda linia która będzie utworzona w ciągu dnia, została na wykresie i nie znikała. Dało by rade jakoś tak?

Dodano po 21 godzinach 31 minutach:

Poradziłem już sobie ;) Znalazłem pewien wskaźnik, który po małym przerobieniu jest dokładnie tym o co mi chodziło. Jeżeli ktoś ma podobny problem, to poniżej wrzucam link do owego wskaźnika:

http://codebase.mql4.com/3600

Mam nadzieje, że komuś się przyda ;)

ODPOWIEDZ