mql4 czy jest opcja użycia wskaźnika na danych z tablicy?

O jezykach programowania w platformach i nie tylko.
PPeFX
Stały bywalec
Stały bywalec
Posty: 25
Rejestracja: 12 lip 2015, 16:48

mql4 czy jest opcja użycia wskaźnika na danych z tablicy?

Nieprzeczytany post autor: PPeFX »

Witam
Tworzę kolejne EA które posiada dane w tablicach.
Pytanie: czy jest opcja użycia tych danych z tablic do wyliczenia wskaźnika.

coś typu:

Kod: Zaznacz cały

 iCustom(array[],...
Dziękuje.

z6yszko
Gaduła
Gaduła
Posty: 266
Rejestracja: 17 sty 2011, 10:09

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: z6yszko »

Parametrami funkcji iCustom mogą być tylko typy proste. Można natomiast podać wiele danych naraz po przecinku, więc prostym rozwiązaniem jest rozwinięcie tablicy i przesłanie do funkcji wartości poszczególnych pól.

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: Pierz Andrzej »

Witam

użycie funkcji iCustom zwraca wartość własnego wskaźnika , nie służy do przypisywania ja nie do końca wiem co chcesz zrobić ?
nie możesz zamiast iCustom(......,i) poprostu odwołać się do array ?
jeżeli chcesz wykorzystać wartości z tablicy i stworzyć na ich podstawie możesz spróbować ArrayCopy ? lub z tablicy zrób bufor wskaźnika ?
jakie dane sa w tych tablicach ? ustawienia wskaźnika ?
z poważaniem
Andrzej Pierz
FOREX-SERVICE

PPeFX
Stały bywalec
Stały bywalec
Posty: 25
Rejestracja: 12 lip 2015, 16:48

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: PPeFX »

Witam ponownie, dziękuje za zainteresowanie.

Hmm jak napiszę jak to wygląda w rzeczywistości to tylko zrobię większe zamieszanie, no ale:

Ea ma wbudowaną funkcję, która "generuje" wykresy podobne do ranko/range. Użyłem słowa podobne, bo to nie są zwykłe ranko/range (tylko ich wartość jest generowana dynamicznie, do zmieniających się warunków na rynku).

Dane w tablicach mam zapisane jak dane csv:
time,O,H,L,C,volume
EA tablicuję tak wykresy z kilku par. A następnie z danych z tablicy chciałbym wyliczyć wskaźnik (również prywatny dlatego pojawia się mi funkcja iCustom...)

Dokładnie chodzi o obliczenie zewnatrznego wskaźnika na danych z tablicy, tak jak funkcje
iCCIOnArray
iMAOnArray
obliczają wskaźniki CCI i MA na danych z tablic.


Jedyne rozwiązanie jakie mi przychodzi do głowy to albo:
Dopisanie do wskaźników tej funkcji "generującej wykresy podobne do ranko/range", tak aby obliczane one były z tych danych. I wtedy iCustom, oddał by wartość taka jaką chce.
Albo zaimplementowanie wskaźników do EA.

Mam nadzieje że się mylę, i da się zrobić bez tak dużych zmian?.
Dziękuje jeszcze raz.

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: Pierz Andrzej »

Wykresy które generujesz domyślam się że mają inny interwał czasowy niż oryginalne powiedzmy 2 , próbowałeś się do nich odwołać ? iCustom(Symbol(),2,...)? może zaskoczy zgaduje bo dawno nie robiłem nic przy wykresach offline
z poważaniem
Andrzej Pierz
FOREX-SERVICE

PPeFX
Stały bywalec
Stały bywalec
Posty: 25
Rejestracja: 12 lip 2015, 16:48

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: PPeFX »

Ale tablice z danymi mam generowane tylko i wyłącznie w pamięci EA.
Nie są pobierane z wykresów offline(domyślne renko M2).
Nie są tam zapisywane.

A tak szczerze to wygenerowanie około 20-30wykresów offline mt4'wórce, a następnie odwołanie się do każdego wykresu po trzy razy za pomocą iCustom();. coś wydaje się mi że będzie trwało z pół minuty.

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: Pierz Andrzej »

Nie wiem za bardzo co Ci w tej sytuacji doradzić ,bo najpierw się pytasz czy istnieje możliwość odwołania się do funkcji iCustom później piszesz że odwoływanie się do w/w funkcji będzie trwało zbyt długo ?

proponuje dopisać do kodu EA funkcje wskaźnika , ewentualnie stworzyć bibliotekę z kodem wskaźnika .
z poważaniem
Andrzej Pierz
FOREX-SERVICE

PPeFX
Stały bywalec
Stały bywalec
Posty: 25
Rejestracja: 12 lip 2015, 16:48

Re: mql4 czy jest opcja użycia wskaźnika na danych z tablicy

Nieprzeczytany post autor: PPeFX »

Dziękuje Andrzeju :)
A ja od samego początku piszę o tym samym w kółko. Nawet 100% pytania zawarte jest w temacie.

A za długo będzie trwało:
otworzenie 30stu wykresów z dodanym EA do generowania wykresów offline, każdy wykres zapisywany jest na dysk.
na 31wszym wykresie otwieram EA docelowe, ktory wczytuje poszczególne wykresy offline z dysku tyle razy ile razy użyje iCustom (3wskaźniki x 30wykresów =90razy wczytanie wykresu offline z dysku!),

To nie jest optymalne rozwiązanie.
Obecnie używam jedno EA, który przy inicjacji generuje te 30 wykresów w pamięci-tablicach. Po wystąpieniu tick'i nadpisuje jeden lub dwa ostatnie wpisy wybranej tablicy. Wszystko działa błyskawicznie,

Zaimplementuje sobie Stocha i jeden wskaźnik który napisałem. MA i CCI jest już domyślnie dla tablic w MT4.
I tyle, to wcale nie tak dużo pracy. A faktycznie będzie to chyba najlepsze rozwiązanie. Szybkie i pewne.

Dziękuje jeszcze raz.

ODPOWIEDZ