Wszystkie pytania dozwolone początkujących programistów
Tak na szybko patrząc..to nie ma żadnego praktycznego zastosowania. Ot tak często progrmiści lubią oznaczać np."kierunek" buy na plus a sell na minus...tak dla rozróżnienia..żeby wiedzieć, że jeżeli liczba ujemna to liczba selli jeżeli dodatania to buyów, ale tutaj jak napisałem, nie ma to kompletnie żadnego znaczenia...Propeth pisze: możesz mi wyjaśnić dlaczego jest mnożone razy -1? Ten fragment jest z Moving Average wbudowanego w MetaTrader.
Podpowie ktoś jak zaprogramować EA tak by otwierał pozycje tylko w przedziale między oraz włącznie z wybranymi dniami tygodnia?
zaczynam od ustawienia externów
Do funkcji init wrzucam konwersję na tych dni tygodnia na integery
No i dalej wiem, że trzeba użyć if (DayOfWeek( ) ... itd.
Ale problem w tym, że nie znam przedziału między SD i ED. Może można jakoś zbudować Array z przedziału między dwoma integerami? Nie mogę znaleźć takiej funkcji w dokumentacji
Z góry dzięki.
Dodano po 7 minutach:
Kurde, chyba już mam
Może innemu noobkowi się przyda 
zaczynam od ustawienia externów
Kod: Zaznacz cały
extern string start_day = "monday";
extern string end_day = "thursday";
int SD;
int ED;
Kod: Zaznacz cały
void init(){
if (start_day=="sunday") SD = 0;
if (start_day=="monday") SD = 1;
if (start_day=="tuesday") SD = 2;
if (start_day=="wednesday") SD = 3;
if (start_day=="thursday") SD = 4;
if (start_day=="friday") SD = 5;
if (start_day=="saturday") SD = 6;
if (end_day=="sunday") ED = 0;
if (end_day=="monday") ED = 1;
if (end_day=="tuesday") ED = 2;
if (end_day=="wednesday") ED = 3;
if (end_day=="thursday") ED = 4;
if (end_day=="friday") ED = 5;
if (end_day=="saturday") ED = 6;
}
Ale problem w tym, że nie znam przedziału między SD i ED. Może można jakoś zbudować Array z przedziału między dwoma integerami? Nie mogę znaleźć takiej funkcji w dokumentacji

Z góry dzięki.
Dodano po 7 minutach:
Kurde, chyba już mam

Kod: Zaznacz cały
if (DayOfWeek()>=SD && DayOfWeek()<=ED)

Dzięki za odpowiedź, a możesz mi jeszcze napisać na jakiej zasadzie działa ten kod:
if(Volume[0]>1) return;
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
Jeżeli aktualna świeczka > 1, zwróci nową obliczoną średnią kroczącą tak?
Tylko co to oznacza, że jest większa od 1?
ps. ten kod to wbudowane MA z mt4
if(Volume[0]>1) return;
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
Jeżeli aktualna świeczka > 1, zwróci nową obliczoną średnią kroczącą tak?
Tylko co to oznacza, że jest większa od 1?
ps. ten kod to wbudowane MA z mt4