Część 4: Rola funkcji w programowaniu. Pokazujemy, jak można je budować samemu i jak korzystać z tych już wbudowanych w język MQL.

Funkcja to zestaw instrukcji do wykonania, które można wywołać jednym krótkim poleceniem. Funkcje znacznie ułatwiają pracę i skracają długość kodu.

Aktualizacja: 06.02.2017 14:32 Publikacja: 31.10.2016 11:13

Powyższy obrazek pokazuje fragment kodu skryptu do składania zleceń. Widzimy tu zarówno wykorzystani

Powyższy obrazek pokazuje fragment kodu skryptu do składania zleceń. Widzimy tu zarówno wykorzystanie funkcji (m.in. opisywana w tekście OrderSend()), jak i instrukcji warunkowych i pętli. Dla odróżnienia od innych elementów funkcje wbudowane są podświetlane na fioletowo. Inne kolory posiadają też poszczególne parametry funkcji. Aby dowiedzieć się, co kryje się pod tymi nazwami (o ile nie są tworem autora kodu), wystarczy zaznaczyć cały wyraz i kliknąć F1. Wówczas otworzy się okno pomocy z dokładnym wyjaśnieniem. Po prawej stronie mamy schemat budowy funkcji oraz listę parametrów funkcji OrderSend().

Foto: Archiwum

Zanim jednak omówimy je szczegółowo z perspektywy programistycznej, przypomnijmy sobie, jak wyglądała prosta funkcja liniowa w matematyce: f(x)=ax+b, gdzie a i b to stałe, a x to zmienna/parametr. Gdy podajemy funkcji wartość parametru x, ta zwróci nam określoną wartość. Gdyby stałe a i b miały wartości odpowiednio 2 i 0, to dla x=2, funkcja zwróciłaby nam wartość 4.

Funkcje w MQL działają podobnie jak w matematyce, tzn. dostają pewne parametry wejściowe (x=2), wykonują na nich określone działania (instrukcje) i zwracają wynik. Jeżeli owe działania są bardzo często wykonywane przez nasz algorytm inwestycyjny, to dzięki funkcjom nie musimy za każdym razem wypisywać wszystkich instrukcji w kodzie. Wystarczy wywołać samą nazwę funkcji.

Pozostało jeszcze 88% artykułu
Tylko 149 zł za rok czytania.

Zyskaj pełen dostęp do analiz, raportów i komentarzy na Parkiet.com

Materiał Partnera
Zasadność ekonomiczna i techniczna inwestycji samorządów w OZE
Inwestycje
ESRS G1 Postępowanie w biznesie
Inwestycje
Złoto już powyżej 3300 dolarów za uncję
Inwestycje
Złoto może być nawet dwa razy droższe
Inwestycje
Krajowy popyt na obligacje nie odpuszcza
Inwestycje
Trump przegrywa we własną grę. Na rynkach ogromny chaos