iCustom - z czym to się je?

O jezykach programowania w platformach i nie tylko.
Awatar użytkownika
Jacek_fx
Stały bywalec
Stały bywalec
Posty: 74
Rejestracja: 18 lis 2007, 11:23

iCustom - z czym to się je?

Nieprzeczytany post autor: Jacek_fx »

Witam

Jak za pomocą funkcji iCustom odczytać wartości tych linii (value1, ...2, ...3) ?

Druga sprawa jeszcze jak stworzyć warunek żeby EA mogła otworzyć tylko jedną transakcję na parze ?


Pozdrawiam
Jacek
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Awatar użytkownika
Esco
Przyjaciel Forum
Przyjaciel Forum
Posty: 2603
Rejestracja: 11 kwie 2010, 20:56

Nieprzeczytany post autor: Esco »

iCustom - z czym to się je?
Z helpem.
double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
Czyli kolejno:
symbol,
TF,
nazwa wskaźnika - dokładna nazwa pliku
wielokropek - kolejno wszystkie parametry wskaźnika
mode - numer bufora.
shift wartość wstecz.

Bufory czyli kolejne linie są opisane tutaj:

Kod: Zaznacz cały

SetIndexBuffer(0,tma); 
SetIndexBuffer(1,upperBand);
SetIndexBuffer(2,lowerBand); 
SetIndexBuffer(3,bull);
SetIndexBuffer(4,bear); 
SetIndexBuffer(5,neutral)
Jacek_fx pisze: Druga sprawa jeszcze jak stworzyć warunek żeby EA mogła otworzyć tylko jedną transakcję na parze ?

1.Pętla for od 1 do OrderTotals()
2. Sprawdzenie każdego zlecenia przez OrderType( )
(czy jest na rynku czy oczekujące) i string OrderSymbol( )
(dla bieżącej pary)

3. Zapisanie wyniku do zmiennej
4. Dodatkowy warunek przy otwieraniu zleceń sprawdzający stan zmiennej.

Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Nieprzeczytany post autor: personov »

Wartości samych linii :

Kod: Zaznacz cały

 double v1 = iCustom(Symbol(),Period(),"TMA",100,0,0);
   double v2 = iCustom(Symbol(),Period(),"TMA",100,1,0);
   double v3 = iCustom(Symbol(),Period(),"TMA",100,2,0);
v1 - linia srodkowa
v2 - linia górna
v3 - linia dolna.
100 to okres, więc możesz go sobie zmienić, albo wyprowadzić do

Kod: Zaznacz cały

 extern
.

Dodano po 17 minutach:

Widzę, że masz trochę inną nazwę wskaźnika, więc w miejsce "TMA" musisz wstawić :
"ExtremeTMALine"
Solą życia jest kasa.

Awatar użytkownika
Jacek_fx
Stały bywalec
Stały bywalec
Posty: 74
Rejestracja: 18 lis 2007, 11:23

Nieprzeczytany post autor: Jacek_fx »

Dziękuję za pomoc

Mam pytanie czy można jakoś szybko zaimplementować ten wskaźnik do EA, ponieważ testy idą baardzo wolno (tzn jakie części kodu wstawić w których sekcjach EA)

Awatar użytkownika
Esco
Przyjaciel Forum
Przyjaciel Forum
Posty: 2603
Rejestracja: 11 kwie 2010, 20:56

Nieprzeczytany post autor: Esco »

Najważniejszy fragment to funkcja CalcTma.

Za bardzo to się tego uprościć już nie da.

Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Nieprzeczytany post autor: personov »

Zobacz sobie w dziennik logów - wskaźnik aktualizuje się co każdy tick. To sprawia, że test już szybciej nie pójdzie.
Poza tym TMA strasznie repaintuje, więc wyniki widoczne na wykresie niewiele mają wspólnego z tym co zobaczysz na wykresie live.
Sam to przerabiałem.
Solą życia jest kasa.

ODPOWIEDZ