Hej!
Gdy w MQL4 próbuję odczytać np. iHigh z wartością parametru shift na tyle dużą, iż platforma nie ma jej załadowanej, to obserwuję masakryczne spowolnienie działania skryptu.
Jak sobie z tym poradzić?
Pozdrawiam,
Jacek
Sposób na brak danych dla funkcji iXXXX
Sposób na brak danych dla funkcji iXXXX
"W Bogu wszelkie nasze bogactwo."
- ninjaproject
- Maniak
- Posty: 4944
- Rejestracja: 30 lip 2019, 13:15
Re: Sposób na brak danych dla funkcji iXXXX
Kod: Zaznacz cały
if(shift>Bars) shift=Bars;
Kod: Zaznacz cały
for(int i=0; i<Bars; i++)
{ }
Trejder, Mentor/trener, aka. Dadas, fx-technik, obecnie ninjaproject.
Programuję wskaźniki i EA do MetaTrader 4/5.
Programuję wskaźniki i EA do MetaTrader 4/5.
Re: Sposób na brak danych dla funkcji iXXXX
Chodziło mi o to, jak mogę programowo załadować tyle danych, ile potrzebuję, a nie ograniczyć pętlę do ilości dostępnych danych.
Jeśli chcę mieć dostęp do np. 10000 wartości wstecz, to jak to uzyskać bez konieczności ręcznego załadowywania danych historycznych po każdym uruchomieniu platformy?
Jeśli chcę mieć dostęp do np. 10000 wartości wstecz, to jak to uzyskać bez konieczności ręcznego załadowywania danych historycznych po każdym uruchomieniu platformy?
"W Bogu wszelkie nasze bogactwo."
- ninjaproject
- Maniak
- Posty: 4944
- Rejestracja: 30 lip 2019, 13:15
Re: Sposób na brak danych dla funkcji iXXXX
To możesz mieć jedynie pretensje do brokera, że podaje tyle, ile podaje. Możesz importować dane z niezależnych źródeł do MT4, ale potrzebujesz wtedy pracować na wykresach offline, bo online dane brokera przepiszą dane pobrane z innych źródeł.Blackhole pisze: ↑07 paź 2019, 08:17Chodziło mi o to, jak mogę programowo załadować tyle danych, ile potrzebuję, a nie ograniczyć pętlę do ilości dostępnych danych.
Jeśli chcę mieć dostęp do np. 10000 wartości wstecz, to jak to uzyskać bez konieczności ręcznego załadowywania danych historycznych po każdym uruchomieniu platformy?
Trejder, Mentor/trener, aka. Dadas, fx-technik, obecnie ninjaproject.
Programuję wskaźniki i EA do MetaTrader 4/5.
Programuję wskaźniki i EA do MetaTrader 4/5.
Re: Sposób na brak danych dla funkcji iXXXX
Jeśli przesunę wykres na początek dostępnych danych, a potem nacisnę np. PgUp lub strzałkę w lewo, to zostają załadowane kolejne dane (chyba tyle, ile się zmieści na szerokości okna). Gdy powyższe zrobię (póki się daje) dla pary EURUSD na M1, to mam dostępnych ponad 30tyś świec.
Nie da się tego uzyskać w MQL4?
Nie da się tego uzyskać w MQL4?
"W Bogu wszelkie nasze bogactwo."
- ninjaproject
- Maniak
- Posty: 4944
- Rejestracja: 30 lip 2019, 13:15
Re: Sposób na brak danych dla funkcji iXXXX
Dane od brokera doładowujemy trzymając wciśnięty klawisz "Home", aż się przestaną ładować. Gdy już są, to są, i nie trzeba ich ponownie wymuszać.Blackhole pisze: ↑09 paź 2019, 09:25Jeśli przesunę wykres na początek dostępnych danych, a potem nacisnę np. PgUp lub strzałkę w lewo, to zostają załadowane kolejne dane (chyba tyle, ile się zmieści na szerokości okna). Gdy powyższe zrobię (póki się daje) dla pary EURUSD na M1, to mam dostępnych ponad 30tyś świec.
Nie da się tego uzyskać w MQL4?
Trejder, Mentor/trener, aka. Dadas, fx-technik, obecnie ninjaproject.
Programuję wskaźniki i EA do MetaTrader 4/5.
Programuję wskaźniki i EA do MetaTrader 4/5.