Pytanie o obsługę komentarzy w mt4
Pokaż wyniki od 1 do 4 z 4

Wątek: Pytanie o obsługę komentarzy w mt4

  1. #1
    Mam komentarz EA, który chciałbym opublikować na wykresie, tylko za pierwszym razem. Obecnie ciągle się powtarza.

    W każdym razie kod jest taki ...

    Wstawiony kod, jeśli ((BuySignalA) ((Ask-Bid) lt; = AvgSpreadHigh)) {Komentarz (TimeToStr (TimeCurrent (), TIME_SECONDS), BUY SIGNAL-A gt; gt; BUY POSITION POWINNA BYĆ OTWARTA LUB WCZEŚNIEJ OTWARTA);/Drukuj (TimeToStr (TimeCurrent (), TIME_SECONDS), BUY SIGNAL-A gt; gt; BUY POSITION POWINNA BYĆ OTWARTA LUB WCZEŚNIEJ OTWARTA); }
    Na początku też ją wydrukowałem, ale gdy funkcja BuySignal jest aktywna, drukuje każdy znak! Zbyt wiele

    Chciałbym, aby skomentował oryginalny BuySignal i zignorował pozostałe, dopóki nie zostanie wygenerowany NEW BuySig lub wygenerowany zostanie SellSig.

    Jak sprawić, by nie powtórzył aktywnego sygnału i tylko po pierwszej aktywacji sygnału? Tak jak teraz, trudno jest powiedzieć przez komentarze, kiedy sygnał był pierwszy aktywny, ponieważ ciągle się powtarza, gdy jest aktywny. Czy komentarze EA są zapisywane gdzieś w pliku? Bo jeśli tak, to w końcu zajmie trochę pamięci, jak sądzę.

  2. #2
    Po aktywacji (założeniu) komentarz pozostanie włączony, dopóki nie zostanie usunięty lub zmieniony, np. Comment (); Musisz zdecydować, kiedy chcesz usunąć komentarz lub go zmienić. EA jest wybierany przez tick, dzięki czemu możesz go wyczyścićzmienić za pomocą następnego tiku, następnej świecy lub ustawić zegar, aby wyczyścićzmienić go po pewnym czasie lub dowolne inne (wykres) wydarzenie. Komentarz nie prowadzi historii. Jest to bieżący ciąg znaków lub brak.

  3. #3
    możesz użyć globalnego var bool PrintComment Ustaw na false po wydrukowaniu komentarza i zmień go na true, gdy pojawi się nowy sygnał, jeśli ((BuySignalA) ((Ask-Bid) lt; = AvgSpreadHigh) PrintComment) {Comment ( TimeToStr (TimeCurrent (), TIME_SECONDS), BUY SIGNAL-A gt; gt; POZYCJA KUPNA POWINNA BYĆ OTWARTA LUB WCZEŚNIEJ OTWARTA);/PrintComment = false; Drukuj (TimeToStr (TimeCurrent (), TIME_SECONDS), BUY SIGNAL-A gt; gt; BUY POSITION POWINNA BYĆ OTWARTA LUB WCZEŚNIEJ OTWARTA); }

  4. #4
    Sprawdź, czy nastąpiła zmiana stanu: Wstawiono kod static bool SignalWas = false; bool SignalIs = (BuySignalA) ((Ask-Bid) lt; = AvgSpreadHigh); if (SignalIs! SignalWas) {Komentarz (TimeToStr (TimeCurrent (), TIME_SECONDS), BUY SIGNAL-A gt; gt; BUY POSITION POWINNA BYĆ OTWARTA LUB WCZEŚNIEJ OTWARTA); } SignalWas = SignalIs; (nieskompilowany, nietestowany)

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Używamy cookies
Używamy cookies, aby jak najlepiej dostosować witrynę do Twoich potrzeb. Kontynuowanie przeglądania tej strony, oznacza zgodę na używanie plików cookies. Aby uzyskać więcej informacji zapoznaj się z naszą Polityką Prywatności.