O!kurra
Rozdział 05
● Otwarte

OkurraGlobal — projektant ustawień wspólnych

Wersja narzędzia: OkurraGlobal 2.00

Uwaga o podziale rozdziałów. Ten rozdział opisuje jak obsługiwać panel OkurraGlobal — jego układ, sekcje, Apply, zapis konfiguracji. Znaczenie poszczególnych ustawień globalnych jest omówione w rozdziałach tematycznych: filtry globalne (10), Break Even Auto (12), Stop on Opposite (13), Daily P/L Limits (14), Equity Guard i Profit Target (15), Trading Hours (16). Tu poznajesz narzędzie; tam — mechanizmy.


Spis treści

5.1 Czym jest OkurraGlobal 5.2 Relacja z OkurraButton — siostrzane panele 5.3 Anatomia panelu 5.4 Dwa layouty: pionowy i poziomy (pasek zakładek) 5.5 Rodziny sekcji — co gdzie ustawiasz 5.6 Apply (N) — licznik zmian i zatwierdzanie 5.7 Save / Load .set — pełny setup całego EA 5.8 Globalne wskaźniki towarzyszące 5.9 Cross-sync z OkurraButton 5.10 Typowy cykl projektowania ustawień globalnych


5.1 Czym jest OkurraGlobal

OkurraGlobal to drugi panel-projektant trybu projektowania — siostra OkurraButton. Tam, gdzie OkurraButton zajmuje się pięcioma strategiami (B1…B5), OkurraGlobal zajmuje się wszystkim, co wspólne dla całego EA: filtrami globalnymi, strażnikami konta, mechanizmem Break Even Auto, Stop on Opposite, Trading Hours, obiektami wykresu i ustawieniami samego panelu sterowania.

Podział jest prosty:

  • OkurraButton = co robi każda z pięciu strategii (rozdział 4).
  • OkurraGlobal = ramy, w których wszystkie strategie działają — filtry dzielone między buttony, limity chroniące konto, godziny pracy, mechanizmy koszyka.

Tak jak OkurraButton, OkurraGlobal jest narzędziem projektowym — układasz w nim ustawienia, oglądasz efekt (np. filtry globalne na wykresie przez wskaźniki towarzyszące), zapisujesz do .set. Niczego nie handluje. I tak jak OkurraButton, jest narzędziem bezpłatnym (rozdział 3.2) — działa od razu po instalacji, bez klucza i bez aktywacji.

Jest jedna istotna różnica praktyczna, do której wrócimy w sekcji 5.7: to z OkurraGlobal zapisujesz pełny .set — kompletną konfigurację całego EA (ustawienia globalne plus wszystkie pięć buttonów). OkurraButton zapisuje tylko buttony; OkurraGlobal zapisuje całość. Dlatego w praktyce OkurraGlobal jest częściej „panelem, z którego eksportujesz gotowy setup”.


5.2 Relacja z OkurraButton — siostrzane panele

OkurraButton i OkurraGlobal są pomyślane do wspólnej pracy na jednym wykresie projektowym (bez EA — rozdział 2). Domyślnie OkurraGlobal pojawia się po prawej stronie OkurraButton (z przesunięciem ustawionym tak, by panele nie nachodziły na siebie), więc po wrzuceniu obu na wykres masz po lewej projektant strategii, po prawej projektant ustawień globalnych.

Współpracują ze sobą na dwa sposoby:

  • Wspólny plik .set. Obie panele czytają i zapisują tę samą konfigurację. Gdy wczytasz .set w jednym, drugi może odświeżyć swoją część (cross-sync — sekcja 5.9).
  • Wskaźniki towarzyszące globalne vs lokalne. OkurraButton dociąga wskaźniki towarzyszące pokazujące filtry aktywnego buttona; OkurraGlobal dociąga te pokazujące filtry globalne (sekcja 5.8). Na wykresie mogą współistnieć — widzisz jednocześnie kontekst globalny i lokalny.

Jak OkurraButton, OkurraGlobal nie ma czego robić na wykresie z działającym EA — projektowanie trzymamy osobno od wykonania.


5.3 Anatomia panelu

Panel OkurraGlobal, od góry:

  1. Belka tytułowa — nazwa narzędzia, przycisk zwijania całego panelu ([-]/[+]), uchwyt do przeciągania.
  2. Pasek statusu — komunikaty o stanie (np. „Loaded: …”, „Applied locally (state saved to disk)”, błędy).
  3. Górny rząd akcji — przyciski globalne: R (Reset), Apply, Save, Load (sekcje 5.6–5.7).
  4. Sekcje ustawień — 32 zwijane sekcje pogrupowane tematycznie (sekcja 5.5), w jednym z dwóch layoutów (sekcja 5.4).

Mechanika edycji jest identyczna jak w OkurraButton (rozdział 4.6). Wartości zmieniasz na trzy sposoby, zależnie od rodzaju pola:

  • Liczby i teksty — klikasz pole, wpisujesz wartość, zatwierdzasz klawiszem ENTER (ESC anuluje).
  • Pola z małą liczbą opcji (2–3)każde kliknięcie przeskakuje na następną wartość w pętli (klik od razu zatwierdza, bez ENTER). Tak działają m.in. przełączniki on/off, tryb Equity Guard (cel/trailing), akcja Daily P/L czy 3-stanowa akcja stopu.
  • Dłuższe listy (ramki czasowe, większe enumy) — kliknięcie rozwija menu, z którego wybierasz pozycję.

Tak samo jak w OkurraButton działa rozróżnienie draft → applied: edycja trafia do wersji roboczej, a dopiero Apply ją zatwierdza (sekcja 5.6), a niezatwierdzone pole świeci się na złoto. Panel obsługuje też skalowanie wielkości, wybór rogu i pozycji, font Consolas oraz przeciąganie za belkę — jak panel-siostra.


5.4 Dwa layouty: pionowy i poziomy (pasek zakładek)

OkurraGlobal ma więcej sekcji niż OkurraButton (32 wobec 11), więc oferuje dwa sposoby ich rozłożenia:

Layout pionowy (klasyczny, domyślny). Sekcje ułożone jedna pod drugą, każda zwijana przez nagłówek z +/. Przewijasz panel i rozwijasz te, nad którymi pracujesz. W tym layoucie każdy nagłówek sekcji ma też opcjonalny przycisk „A” (quick-Apply) — zatwierdza tylko tę sekcję (opcja włączana w ustawieniach panelu).

Layout poziomy (pasek zakładek). U góry panelu (pod rzędem akcji) pojawia się poziomy pasek wąskich zakładek — po jednej na sekcję. Etykieta każdej zakładki to krótki kod sekcji pisany litera po literze, w pionie (np. DPL, EG, GSAR, GOKUR, TH). Klikasz zakładkę i panel pokazuje tylko tę jedną sekcję w pełnej szerokości. To trzyma panel kompaktowym pionowo — zamiast długiej listy masz „kartoteki” przełączane jednym kliknięciem. Wygodne, gdy projektujesz punktowo (np. tylko Trading Hours) i nie chcesz przewijać całości.

Przełącznik między layoutami oraz wybrana zakładka są zapamiętywane (per wykres), więc panel wraca do Twojego układu po zmianie ramki czasowej czy restarcie.

porównanie dwóch layoutów OkurraGlobal obok siebie: po lewej layout pionowy (lista zwijanych sekcji, „A" przy każdej), po prawej layout poziomy (poziomy pasek zakładek u góry, etykiety litera po literze, bez „A" + jedna rozwinięta sekcja); podpis, że to ten sam panel, dwa sposoby rozłożenia
Rys. 5.1 — OkurraGlobal — układ pionowy i poziomy

Który layout wybrać? Pionowy jest dobry, gdy chcesz widzieć kilka sekcji naraz i przewijać. Poziomy — gdy masz dużo sekcji i wolisz skakać między nimi jak po zakładkach. To czysto wizualna preferencja; nie wpływa na projektowane ustawienia.


5.5 Rodziny sekcji — co gdzie ustawiasz

Trzydzieści dwie sekcje brzmią jak dużo, ale układają się w osiem logicznych rodzin. Kolejność na panelu jest celowa: od zarządzania pozycją i pieniędzmi, przez filtry, mechanizmy koszyka, po ustawienia samego panelu.

RodzinaSekcje na paneluZnaczenie → rozdział
Pozycja i strażnicy kontaGlobal Position Management · Daily P/L Limits · Equity Guard · Profit Target · T. on Server9, 14, 15
Sesja handlowaTrading Hours16
Filtry globalneGlobal SAR Filter · Global MMD Filter · Global SR Filter · Global OKUR Filter10
Break Even AutoBreak Even Auto (BEa) · BEa Auto-Arm: Time-of-day / SAR Flip / MMD Cross / SR Break / OKUR Cross12
Stop on OppositeStopOpp Setup · StopOpp SAR · StopOpp MMD · StopOpp SR · StopOpp OKUR13
Obiekty wykresuActivation Zones · Target Lines11
Czujniki ruchu cenyPrice Movement (ustawienia wspólne + 4 bloki czujników)18
Panel i systemControl Panel (+ Info, + Layout) · Global Core · Alerts · Panel: Global Actions / Status + Target Blocks / Trade Markers8, 20

Kilka uwag praktycznych do tego podziału:

  • Filtry globalne (4 sekcje) to wspólne zestawy SAR/MMD/SR/OKUR, do których buttony „podpinają się” przez opt-in Use Global … Filter (rozdział 4.5, znaczenie w 10). Tu ustawiasz je raz dla całego EA. Sekcja Global SR Filter ma — obok wiersza SR Reaction Mode — wiersz „SR Last Zone Mode”: tryb, w którym ostatnia potwierdzona strefa SR wyznacza jedyny dozwolony kierunek wejść (rozdział 10.5).
  • Break Even Auto to aż sześć sekcji — sam BEa plus pięć osobnych sekcji wyzwalaczy Auto-Arm (Time, SAR, MMD, SR, OKUR). To odzwierciedla, że każdy wyzwalacz ma własne, niezależne parametry (rozdział 12). Sekcja BEa Auto-Arm: OKUR Cross mieści od wydania 1.28 dwa wyzwalacze na wspólnej instancji oscylatora: strefowy OKUR transition oraz wiersze Bounce (arm on pull-back) / Bounce BUY Th / Bounce SELL Th / Bounce Correction — szósty wyzwalacz, uzbrajający na odbiciu od ekstremum wyczerpania (rozdział 12.7). Sama sekcja „Break Even Auto (BEa)” mieści też komórki sterujące strażnikiem i rozmiarem dokładek: Zero-level guard (od Global 1.15 — strażnik poziomu zero na własnym przełączniku, domyślnie włączony), Adapted sizing, Multisize x / step / max lot (od wydania 2.00 mnożnik przyjmuje ułamki, a wartości poniżej 1 dają degresję — rozdział 12.6), Adapted 1st hedge % of basket (od Global 1.15 — skala pierwszej dokładki tarczy), Adapted tolerance unit (od Global 1.15 — jednostka progu: loty albo % chronionego koszyka) oraz Adapted tolerance (0=flip, -=early) — próg strażnika poziomu zero (do Global 1.14 etykieta „Adapted tolerance lots (0=flip)”); do tego wiersz 1st hedge open on arm (dawniej „Instant open on arm”) oraz Manual arm incl. all (domyślnie włączona — ręczne uzbrojenie zgarnia cały kierunek; rozdział 12.3); od Global 1.23 na końcu sekcji także para Auto-Arm Mode SELL / BUY — tryb łączenia wyzwalaczy Auto-Arm danego kierunku (any (OR) = pierwszy spełniony uzbraja, domyślnie; all (AND) = konfluencja wszystkich włączonych; rozdział 12.8); znaczenie wszystkich opisuje rozdział 12.6.
  • Stop on Opposite to pięć sekcji — wspólna StopOpp Setup plus po jednej na filtr (SAR/MMD/SR/OKUR), z parametrami niezależnymi od filtrów wejścia (rozdział 13). Sekcja StopOpp Setup (od Global 1.25) lustruje grupę F7 „Stop Opposite Setup” i zawiera wiersz Sources Mode (all buttons) — globalny tryb łączenia aktywnych filtrów SO buttona (any (OR) = pierwszy przeciwny reaguje, domyślnie; all (AND) = reakcja dopiero przy wszystkich przeciwnych naraz; rozdział 13.9). Ustawienie jest wspólne dla wszystkich źródeł i wszystkich buttonów — dlatego mieszka we własnej sekcji, a nie w żadnej z sekcji per filtr.
  • T. on Server — osobna sekcja w rodzinie pozycji/strażników (na panelu pod tą etykietą): tryb wpisywania realnych SL/TP po stronie serwera brokera (z harmonogramem), alternatywa dla wirtualnych (stealth) SL/TP pilnowanych przez EA. Mechanizm omawiamy w rozdziale 9.
  • Rodzina „Czujniki ruchu ceny” to jedna sekcja Price Movement (ustawienia wspólne rodziny + cztery bloki czujników po sześć wierszy) — fizycznie na panelu leży między Global Core a Alerts; znaczenie w rozdziale 18.
  • Rodzina „Panel i system” nie dotyczy strategii, tylko wyglądu i widoczności panelu sterowania EA — co pokazywać, jak rozłożyć. Global Core zawiera ustawienia systemowe: Magic Number oraz wirtualizację pendingów i SL/TP. (Klucza licencyjnego panel nie pokazuje — podajesz go wyłącznie w inputach EA, rozdział 3.) Znaczenie tych ustawień omawiamy przy panelu EA (rozdział 8). Do tej rodziny należy też sekcja Alerts — dziesięć komórek wyciszania okienek alarmowych EA (jedenasty przełącznik alertów — Own Registry Popup — żyje tylko w oknie Inputs EA; opis niżej w tym podrozdziale).

W tym rozdziale chodzi o to, gdzie te ustawienia są i jak je zatwierdzać. Po sens każdego z nich sięgaj do rozdziałów z kolumny po prawej.

To samo da się ustawić w samym EA. Każda z tych sekcji odpowiada grupie parametrów w oknie Inputs EA (np. Global Position Management, Daily P/L Limits, Equity Guard, T. on Server, Trading Hours…). OkurraGlobal nie jest więc technicznie konieczny — całość skonfigurujesz wprost w EA przez F7. Panel daje jednak czytelny podział na sekcje, podgląd filtrów globalnych na wykresie i złoty znacznik niezatwierdzonych zmian, więc projektowanie jest w nim wygodniejsze i mniej podatne na pomyłki niż w surowej, długiej liście Inputs (rozdział 8.1).

Komórki sekcji Position Management — m.in. odchylenie ceny (slippage)

W rodzinie Pozycja i strażnicy konta sekcja Position Management zbiera globalne ustawienia wykonania zleceń. Obok komórek „Max Spread (pts)” (maksymalny dopuszczalny spread) i „TS Min Delta (pts)” są tu dwie komórki odchylenia ceny (slippage):

  • „Open Slippage (pts)” (domyślnie 20) — maksymalne dopuszczalne odchylenie ceny przy otwieraniu pozycji.
  • „Close Slippage (pts)” (domyślnie 500) — maksymalne odchylenie przy zamykaniu. Większa wartość = mniej odrzuceń zamknięć (praktycznie wymuszone wyjście, kosztem nieco gorszej ceny).

Po co aż taki zapas przy zamykaniu: na kontach z egzekucją Instant broker honoruje dozwolone odchylenie i przy szybkim ruchu potrafi odrzucić zamknięcie lub modyfikację (requote). Hojny margines przy zamykaniu sprawia, że ochronne wyjścia (awaryjne zamknięcie Break Even, Equity Guard, wirtualny SL, ręczne Close All) nie są odrzucane. Na kontach Market odchylenie jest ignorowane (zamknięcie i tak idzie po rynku). Pojęcia Market / Instant execution oraz slippage — rozdział 3.

Wartości ustawiasz w panelu OkurraGlobal, a następnie — jak każdą konfigurację — zapisujesz do .set i wczytujesz do EA przez F7 (sekcja 5.7).

zbliżenie sekcji „Position Management" panelu OkurraGlobal z komórkami: Max Spread (pts), TS Min Delta (pts) oraz NOWE Open Slippage (pts) = 20 i Close Slippage (pts) = 500; podpis: globalne ustawienia wykonania zleceń, edytowalne w panelu, eksport przez .set → F7
Rys. 5.2 — Sekcja Global Position Management

Normalizacja lota zmiennością (ATR) — sześć komórek

Od wydania 2.00 sekcja Position Management mieści też sześć komórek normalizacji lota ATR — mechanizmu, który skaluje bazowy lot wszystkich batonów odwrotnie do bieżącej zmienności rynku (wysoka zmienność = mniejszy lot, niska = większy): włącznik Lot ATR Enabled, okres i ramka ATR, ATR odniesienia w punktach (= 100% lota; 0 = mechanizm bezczynny, nawet przy włączniku) oraz widełki procentowe Min/Max (domyślnie 25–400%). Domyślnie całość jest wyłączona. Znaczenie i kalibrację opisuje rozdział 9.9; jak każdą sekcję Global, wartości eksportujesz przez .set (klucze LotATR_*) i wczytujesz do EA przez F7 — ta sama grupa nazywa się w oknie Inputs EA „Lot Volatility Normalization (ATR)”.

Monitor Own Only — tryb „tylko moje”

Komórka „Monitor Own Only” (domyślnie włączona) przełącza EA w tryb „tylko moje”: robot zarządza (Break Even, Trailing, wirtualny SL/TP, koszyki, wszystkie zamknięcia) wyłącznie pozycjami, które sam otworzył — a nie wszystkimi pozycjami o pasującym Magic Numberze na symbolu.

Po co to jest: gdy dwie instancje EA pracują na tym samym symbolu z tym samym (lub nakładającym się) Magic Numberem — np. dwa wykresy tego samego instrumentu z różnymi ustawieniami — bez tego trybu każda widziałaby pozycje drugiej jako własne („przenikanie”): liczyłaby je do koszyka, przesuwała im stopy, a przy Close All zamykała cudze. W trybie „tylko moje” każda instancja prowadzi własny rejestr pozycji (trwały plik w MQL5/Files/OKU/ea_memory/, rozpoznawany po koncie, symbolu, Magic i wykresie), który przeżywa restart terminala i rekompilację.

Skąd EA wie, że pozycja jest „jego”? Od EA 1.11 wpis do rejestru powstaje w chwili, gdy ta instancja wysyła zlecenie — a nie na podstawie Magic Number wyczytanego z powiadomień brokera. To celowe wzmocnienie: powiadomienia brokera bywają niekompletne (odrzucone zlecenie asynchroniczne potrafi wrócić bez Magic), a przy dwóch instancjach o wspólnym lub nakładającym się Magic rejestr karmiony powiadomieniami dopisywał każdej z nich także otwarcia sąsiadki — czyli dziurawił izolację dokładnie tam, gdzie miała chronić. Teraz pozycja sąsiedniej instancji nie trafi do rejestru nigdy; jedyny moment, w którym EA dopisuje pozycje „po Magic”, to jednorazowa adopcja przy pierwszym uruchomieniu trybu (patrz niżej).

Trzy zachowania, o których warto wiedzieć:

  • Aktualizacja na żywym koszyku jest bezpieczna. Przy pierwszym uruchomieniu tego trybu (rejestr jeszcze nie istnieje) EA automatycznie adoptuje aktualnie otwarte pozycje o swoim Magic — nic nie wypada spod opieki. Gdyby rejestr już istniał, a jakieś pozycje mimo to zostały poza nim (przypadek awaryjny), w ustawieniach EA jest jednorazowy przełącznik Global_OwnOnly_AdoptExisting (domyślnie wyłączony): włącz, zrestartuj EA — dopisze wszystkie bieżące pozycje o swoim Magic do rejestru — i wyłącz z powrotem.
  • Odporność na odmowy brokera. Pozycja jest wykreślana z rejestru dopiero, gdy faktycznie zniknęła z konta. Odrzucone przez brokera zamknięcie nie wyrzuca jej spod ochrony.
  • Granica trybu: izoluje zarządzanie otwartymi pozycjami. Zrealizowany wynik dnia (Daily P/L) nadal liczy się per Magic Number — dwie instancje o wspólnym Magic wciąż współdzielą „dzienne zero”. Dlatego rozsunięcie baz Magic (co ≥7) pozostaje zalecane (rozdział 9); „tylko moje” chroni przed mieszaniem koszyków, nie zwalnia z higieny Magic.

Wyłączenie komórki przywraca dawne zachowanie (wszystko po symbolu+Magic). Pokrewna komórka „Markers Own Only” w sekcji Panel: Trade Markers zawęża analogicznie wizualizację transakcji (strzałki historii i linie pozycji) do tej instancji — szczegóły w rozdziale 19.

Close Model — jak EA wysyła zamknięcia

Dwie komórki sterują sposobem wysyłania zamknięć (Close All, Equity Guard, Profit Target, Basket Max Loss, BEa, wirtualny SL/TP):

  • „Close Model (0=Auto 1=Sync 2=Async 3=Adapt)” (domyślnie 0 = Auto; do EA 1.22 domyślny był 3 = Adaptive) — tryb pierwszej próby zamknięcia:
    • 0 Auto — zachowanie klasyczne: honoruje przełącznik Async Close All,
    • 1 Sync — zawsze synchronicznie: każde zamknięcie czeka na potwierdzenie brokera, zanim poleci następne (najwolniej przy dużym koszyku, maksymalna przewidywalność),
    • 2 Async — zawsze asynchronicznie: cały koszyk wysyłany od razu (najszybciej),
    • 3 Adaptive — asynchronicznie, ale z uczeniem się: jeśli po wysyłce asynchronicznej broker zostawi niedomknięte pozycje, EA przechodzi na tryb synchroniczny na czas cooldownu, po czym sam próbnie wraca do asynchronicznego.
  • „Adapt Sync Cooldown (min)” (domyślnie 30) — długość tego cooldownu w minutach.

Prozą o domyślnym zestawieniu (od EA 1.23): tryb Auto honoruje przełącznik Async Close All, a ten jest domyślnie wyłączony — więc bez zmiany ustawień każde zamknięcie czeka na potwierdzenie brokera (maksymalna przewidywalność). Kto chce szybszego zamykania dużych koszyków, włącza Async Close All albo przełącza model na Async/Adaptive — mechanika trybów bez zmian.

Siatka bezpieczeństwa działa zawsze. Niezależnie od modelu, po każdej wysyłce EA weryfikuje, czy pozycje naprawdę się zamknęły, a niedobitki dobija synchronicznie i alarmuje. Model wybiera tylko pierwszy strzał — weryfikacja i dobitka są nieusuwalne.

Zanim EA cokolwiek wyśle, sprawdza też, czy handel w ogóle jest włączony (AutoTrading terminala + zgoda algo dla EA). Gdy nie jest — zamiast lawiny odrzuceń dostajesz jeden wyraźny alert „PROTECTION OFFLINE” co minutę (rozdział 21.6).

Commission per Lot — prowizja brokera w liczeniu wyniku

Komórka „Commission / 1.0 Lot RT (0=off)” (domyślnie 0 = wyłączone) podaje EA szacunkowy koszt prowizji brokera za 1.0 lota w obie strony (round-turn: otwarcie + zamknięcie), w walucie konta. Przykład: broker pobiera 3.50 USD za stronę → wpisz 7.0. Wartość znajdziesz w specyfikacji rachunku u brokera.

Po co to jest: platforma nie raportuje prowizji na otwartej pozycji — jej bieżący zysk/strata (floating) wygląda lepiej, niż jest naprawdę. Po wpisaniu wartości EA pomniejsza floating każdej otwartej pozycji o loty × koszt, dzięki czemu Equity Guard, Basket Max Loss, Daily P/L i panel Status widzą wynik netto i reagują na prawdziwych progach, nie zawyżonych o koszty. Dodatkowo:

  • „Zamknij tylko zyskowne” (oraz Profit Target w trybie „zamknij tylko stratne”) nie uzna za zyskowną pozycji, która ledwie pokrywa własną prowizję.
  • Tarcza BEa odsuwa poziom break-even tak, żeby „zero” pokrywało też prowizję koszyka — zamyka odrobinę później, ale na prawdziwym zerze po kosztach (rozdział 12.2).

Zamkniętych transakcji EA nie szacuje — tam zawsze liczy się faktyczna prowizja zaksięgowana przez brokera (w tym pobierana już przy otwarciu pozycji). Wartość 0 = liczenie wyniku dokładnie jak dotąd.

Sekcja Alerts — kontrola wyskakujących okienek

EA informuje o ważnych zdarzeniach okienkami alarmowymi MetaTradera (Alert), a opcjonalnie także powiadomieniami push na telefon. Przy intensywnym handlu okienek potrafi być dużo — sekcja Alerts (od EA 1.08 / Global 1.05) pozwala włączyć każdą grupę osobno. Jedenaście przełączników (dziesiąty — BEa Level Cross Popup — doszedł w EA 1.20 / Global 1.15; jedenasty — Own Registry Popup — w EA 1.26 i jest na razie tylko w oknie Inputs EA, panel pokazuje dziesięć komórek), od EA 1.23 domyślnie WYŁĄCZONE z jednym wyjątkiem: Own Registry Popup jest fabrycznie włączony (czysto informacyjny — rozdział 7.9). Pozostałe okienka włączasz świadomie, tylko te, które chcesz oglądać (do wersji 1.22 wszystkie były domyślnie włączone):

KomórkaKiedy alarmuje
Auto-Close Popupstrażnik automatycznie zamknął pozycje — okienko podaje, który (Equity Guard / Profit Target / Basket Max Loss / Target Line)
Daily Limit Popupzadziałał dzienny limit zysku lub straty (Daily P/L, rozdział 14)
Naked SL Popupbutton ma włączony wirtualny SL, ale StopLoss=0 — otwarcia są blokowane, okienko wyjaśnia dlaczego
Instance Conflict Popupinna instancja EA używa tego samego lub nakładającego się Magic Number (rozdział 9)
BEa Armed Popuppo restarcie EA tarcza BEa nadal jest uzbrojona (rozdział 12)
BEa Level Cross Popuppoziom ochrony BEa przeszedł na stronę tarczy — chroniony koszyk potrzebuje ruchu rynku dalej przeciwko sobie, żeby wyjść na zero (rozdział 12.6)
Protection Offline PopupAutoTrading jest wyłączony i wysyłki ochronne są blokowane — „PROTECTION OFFLINE” (rozdział 21.6)
Broker Refusal Popupbroker odmawia przesunięcia SL lub zamknięcia — w tym alerty o niedobitkach i ponowieniach
Trigger Loop Popupwykryto pętlę triggerów między batonami i włączył się cooldown (rozdział 17)
Own Registry Popup (EA 1.26; tylko okno Inputs EA — F7)zdarzenia rejestru własności (rozdział 7.9): sierota z dowodem — indywidualny popup; przypadki bez dowodu — jeden zbiorczy popup na sesję; sprzątnięcie pendingów po restarcie; ostrzeżenie MagicBase ≤ 0 — jedyny przełącznik domyślnie włączony
Push Notificationswspólny wyłącznik kanału push na telefon (MetaQuotes ID)

Trzy zasady, które warto znać:

  • Wyciszasz tylko okienko / push. Każdy przełącznik gasi wyłącznie kanał popup/push swojej grupy — wpis do dziennika Experts (log) zostaje zawsze, więc diagnostyka nie ślepnie (rozdział 21).
  • Alerty licencyjne nie mają wyłącznika — celowo. Musisz zawsze widzieć, dlaczego EA nie handluje. Żeby nie były uciążliwe, okienko o tym samym, utrzymującym się problemie powtarza się najwyżej raz na 4 godziny (rozdział 3.7); wpis w dzienniku zostaje przy każdej próbie.
  • Push wymaga MetaQuotes ID skonfigurowanego w MT5 (Tools → Options → Notifications). Bez niego włączony przełącznik po prostu nic nie wysyła.

Prozą o dziesiątym przełączniku: BEa Level Cross Popup alarmuje wyłącznie wtedy, gdy poziom ochrony tarczy BEa przechodzi na stronę dokładek — dla koszyka SELL cel znajdzie się nad ceną, dla koszyka BUY pod ceną, czyli chroniony koszyk potrzebuje już ruchu rynku dalej przeciwko sobie. Stan „zablokowany” (równe loty — celu i linii nie ma) jest celowo tylko w logu: przy tarczy wyrównującej występuje przy każdym uzbrojeniu i alarmowanie go zagłuszyłoby przypadek naprawdę groźny (rozdział 12.6).

Prozą o jedenastym przełączniku: Own Registry Popup (Global_AlertOwnRegistry, od EA 1.26) to jedyny alert włączony fabrycznie — czysto informacyjny, nigdy nie zmienia handlu (w testerze wyciszony). Obejmuje zdarzenia rejestru własności pozycji: sierota z dowodem własności dostaje indywidualne okienko, przypadki bez dowodu zbiera jeden zbiorczy popup na sesję, do tego komunikat o sprzątnięciu zleceń oczekujących po restarcie i ostrzeżenie o MagicBase ≤ 0. Przełącznik nie ma komórki w panelu Global 1.18 — ustawisz go wyłącznie w oknie Inputs EA (F7); plik .set zapisany z panelu nie zawiera tego klucza, więc wczytanie go przez F7 zostawia wartość domyślną (włączony). Wyłączenie (Global_AlertOwnRegistry=false) gasi tylko popupy — wpisy w dzienniku Experts zostają. Szczegóły i strażnik anty-zalewowy — rozdział 7.9.

Jak każdą sekcję Global — ustawienia eksportujesz przez .set (klucze Global_Alert…) i wczytujesz do EA przez F7; ta sama grupa „Alerts” jest wprost w oknie Inputs EA.

zbliżenie sekcji „Alerts" panelu OkurraGlobal: 10 komórek w kolejności kodu Global 1.17 (Auto-Close Popup, Daily Limit Popup, Naked SL Popup, Instance Conflict Popup, BEa Armed Popup, BEa Level Cross Popup, Protection Offline Popup, Broker Refusal Popup, Trigger Loop Popup, Push Notifications), **wszystkie false — domyślnie wyłączone od EA 1.23**; obok wyróżniona plakietka jedenastego przełącznika **Own Registry Popup (EA 1.26) = true — tylko okno Inputs EA (F7), jedyny fabrycznie włączony, czysto informacyjny (rozdział 7.9)**; adnotacje: „przełącznik steruje tylko okienkiem/push — log zostaje zawsze", „alerty licencyjne bez wyłącznika (max 1 popup / 4 h)"
Rys. 5.3 — Sekcja Alerts — wyciszanie okienek alarmowych (8 grup + push)

5.6 Apply (N) — licznik zmian i zatwierdzanie

OkurraGlobal — jak OkurraButton — rozdziela draft (Twoje bieżące edycje) od applied (zatwierdzony stan, z którego czytają wskaźniki towarzyszące i który eksportujesz). Apply przenosi draft → applied.

Tym, co OkurraGlobal dodaje, jest licznik zmian wprost na przycisku Apply. Gdy masz niezatwierdzone edycje, przycisk pokazuje Apply (N), gdzie N to liczba pól czekających na zatwierdzenie. Gdy wszystko jest zatwierdzone, przycisk pokazuje po prostu Apply. Dzięki temu od razu widzisz, ile zmian wisi w drafcie — pomocne przy dużej liczbie sekcji, gdzie łatwo zapomnieć, że gdzieś coś się jeszcze zmieniło.

W layoucie pionowym sekcje mają dodatkowo przyciski „A” — to skróty do tego samego, pełnego Apply: kliknięcie „A” przy dowolnej sekcji zatwierdza cały panel (wszystkie sekcje naraz), dokładnie jak główny Apply. Przycisk „A” nie pokazuje licznika i nie zatwierdza wybiórczo — jest po to, żebyś przy długim, przewiniętym panelu nie musiał wracać do głównego przycisku.

Co robi Apply (model manualny, rozdział 2.7), identycznie jak w OkurraButton:

  1. Draft → applied (zapis do wewnętrznego stanu Global_applied.ini).
  2. Auto-zapis kopii do historii (OKU/history/auto_Global_<znacznik-czasu>.ini) — rolujący backup.
  3. Odświeżenie globalnych wskaźników towarzyszących na wykresie.

I tak samo jak w OkurraButton: Apply nie wysyła niczego do EA. Aby konfiguracja trafiła do robota — Save .set + F7 (sekcja 5.7).

Przycisk R (Reset) czyści zaaplikowany stan globalny (z zabezpieczeniem przed przypadkowym kliknięciem), nie tykając historii — analogicznie do Reset w OkurraButton.


5.7 Save / Load .set — pełny setup całego EA

To jest miejsce, w którym OkurraGlobal różni się funkcjonalnie od OkurraButton i dlatego bywa „głównym panelem eksportu”.

Save — zapis pełnego setupu. Kliknięcie Save w OkurraGlobal zapisuje do .set kompletną konfigurację całego EA:

  • sekcję globalną (wszystkie ustawienia z 32 sekcji tego panelu),
  • oraz parametry wszystkich pięciu buttonów (B1…B5).

To jest plik gotowy do wczytania do robota „jak leci” — masz w nim wszystko. Po kliknięciu Save otwiera się małe okienko zapisu z polem nazwy — nazwę nadajesz od razu, w samym dialogu (podpowiedziana jest domyślna Global_<znacznik-czasu>.set; zatwierdzasz „V”, anulujesz „X”). Plik ląduje w katalogu OKU/sets/; nazwę da się też zmienić później, w dialogu Load (rozdział 7.2).

Porównanie z OkurraButton. Save w OkurraButton zapisuje tylko buttony (B1…B5), bez sekcji globalnej. Save w OkurraGlobal zapisuje całość (globalne + buttony). Jeśli projektujesz pełny setup i chcesz jeden plik do EA — zapisuj z OkurraGlobal. Szczegółowe porównanie obu rodzajów .set — rozdział 2.4, a pełny opis przenoszenia konfiguracji — rozdział 7.

Load — wczytanie .set. Otwiera przeglądarkę plików .set z OKU/sets/. Wybierasz plik, panel wczytuje z niego sekcję globalną (i — przez cross-sync — przekazuje OkurraButton jego część). W dialogu Load możesz też przemianować zapisane pliki.


5.8 Globalne wskaźniki towarzyszące

OkurraGlobal dociąga globalne wersje wskaźników towarzyszących — pokazujące na wykresie filtry globalne, czyli te, do których podpinają się buttony przez opt-in:

  • automatyczne doładowanie globalnego SAR — nakłada wskaźnik OkurraGlobalSAR (kropki globalnego SAR).
  • automatyczne doładowanie globalnego MMD — nakłada OkurraGlobalMMD (chmury globalnego MMD).
  • automatyczne doładowanie globalnego SR — nakłada OkurraGlobalSR (strefy globalnego SR).
  • automatyczne doładowanie globalnego OKUR — nakłada OkurraGlobalOscillator (globalny OKUR Filter w osobnym oknie).
  • automatyczne zdejmowanie wskaźników — usuwa te nakładki, gdy zdejmujesz OkurraGlobal z wykresu.

Wszystkie pięć włączników jest domyślnie aktywnych — po wrzuceniu OkurraGlobal na wykres komplet globalnych nakładek dociąga się sam, a przy zdjęciu panelu znika razem z nim.

Te wskaźniki pokazują kontekst globalny — niezależnie od tego, który button jest aktywny w OkurraButton. Dzięki temu, projektując filtry globalne, od razu widzisz na wykresie, gdzie wypadają, i możesz je dostroić tak, by pasowały do strategii, które będą się do nich podpinać. Pełny opis wskaźników towarzyszących (lokalnych i globalnych) — rozdział 6.

Stan zero. Mimo że doładowanie jest domyślnie włączone, dana nakładka globalna pojawia się tylko wtedy, gdy włączysz dla niej „Show … On Chart” (po Apply). Bez tego OkurraGlobal nie rysuje jej wcale — świeży wykres pozostaje pusty (rozdział 6.6).


5.9 Cross-sync z OkurraButton

Gdy oba panele są na tym samym wykresie, działa między nimi synchronizacja przy wczytywaniu .set (mechanizm opisany w rozdziale 2.5):

  • Wczytujesz .set w OkurraGlobal → OkurraGlobal wczytuje sekcję globalną, a OkurraButton (jeśli obecny) wczytuje z tego samego pliku parametry B1…B5.
  • Wczytujesz .set w OkurraButton → OkurraButton wczytuje buttony, a OkurraGlobal wczytuje sekcję globalną.

Jedno wczytanie pliku odświeża więc oba panele — nie musisz ładować tej samej konfiguracji dwa razy. Synchronizacja jest lokalna dla wykresu i — co warto powtórzyć — nie dotyka EA. Żeby zmiana trafiła do robota, zapisujesz .set i wczytujesz go w EA przez F7.


5.10 Typowy cykl projektowania ustawień globalnych

Rytm pracy z OkurraGlobal jest bliźniaczy do cyklu z OkurraButton (rozdział 4.12), tylko dotyczy ram, w których działają strategie:

  1. Wrzuć OkurraGlobal na wykres projektowy (najlepiej obok OkurraButton, bez EA). Globalne wskaźniki towarzyszące dociągną się same.
  2. Wybierz layout — pionowy albo poziomy (sekcja 5.4) — zależnie od tego, jak wygodnie Ci się pracuje.
  3. Zaprojektuj ustawienia w rodzinach sekcji (sekcja 5.5): najpierw to, co rzeczywiście chcesz włączyć — np. filtry globalne, jeśli buttony mają z nich korzystać, i strażników konta, jeśli chcesz limitów. Reszta zostaje na sensownych defaultach.
  4. Apply. Obserwuj licznik Apply (N) — gdy wraca do Apply, wszystko jest zatwierdzone. Globalne wskaźniki towarzyszące przerysują się pod nową konfigurację.
  5. Spójrz na wykres. Czy filtry globalne wypadają tam, gdzie chcesz, by bramkowały sygnały buttonów? Popraw i zatwierdź ponownie.
  6. Gdy całość gotowa — kliknij Save, by zapisać pełny .set (globalne + wszystkie buttony). To ten plik wczytasz do EA (rozdział 7).

Zwykle projektujesz równolegle w obu panelach: buttony w OkurraButton, ramy w OkurraGlobal, a na koniec zapisujesz całość jednym Save z OkurraGlobal. Cierpliwość i obserwacja wskaźników towarzyszących — tu, jak wszędzie w trybie projektowania — są głównym narzędziem.


Na tym kończymy parę panel-projektantów. W kolejnym rozdziale przyglądamy się wskaźnikom towarzyszącym — ośmiu narzędziom wizualizacyjnym, które pokazują na wykresie to, co widzą filtry i oscylatory: jak je czytać, kiedy ich używać, jak współgrają z panelami i z EA.