Potrzebna pomoc do kodu - wybierz zamówienie
Pokaż wyniki od 1 do 5 z 5

Wątek: Potrzebna pomoc do kodu - wybierz zamówienie

  1. #1
    Czasy muszą być złe, jeśli nie widzę drewna dla drzew!
    Poniższy kod powinien dać mi dane o pozycji otwartej dla pary wykresów, ALE otrzymuję dane dla innej pary wykresów ... dlaczego?
    Na wykresie GBP komentarz podaje poprawnie parę wykresów, ale symbol zamówienia i dane dotyczą AUD ... jak to możliwe, gdy nie należy wprowadzać sekcji if (OrderSymbol () == Symbol ())?

    NAGRODĘ dla każdego, kto pierwszy odpowie poprawnie .... Wolny dzień wolny od handlu w Boże Narodzenie :-)
    Wszystkiego najlepszego z okazji Bożego Narodzenia.

    Wstawiony kod void UpdateOpenTrades () {int c, mOrdTotal; bool mOp; mOrdTotal = OrdersTotal (); dla (c = mOrdTotal - 1; c gt; = 0; c--) {mOp = OrderEelect (c, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol () == Symbol ()) OrderMagicNumber () == mMagicN) {if (OrderType () == OP_BUY || OrderType () == OP_SELL) {DelPending (); Komentarz (Symbol (),, OrderSymbol (), OrderType (), DoubleToStr (OrderLots (), 2)); if (OrderType () == OP_BUY) mTradeData # 91; 0 # 93; = 1; w przeciwnym razie mTradeData # 91; 0 # 93; = 2; mTradeData # 91; 1 # 93; = OrderOpenTime (); mTradeData # 91; 2 # 93; = OrderTicket (); mTradeData # 91; 5 # 93; = NormalizeDouble (OrderLots (), mLotSizeDigits); if (iTime (NULL, 1440, 0) gt; OrderOpenTime ()) {if (TimeDayOfWeek (iTime (NULL, 1440, 0))! = 1) {mTradeData # 91; 3 # 93; = iHigh (NULL, 1440, 1); mTradeData # 91; 4 # 93; = iLow (NULL, 1440, 1); } else {mTradeData # 91; 3 # 93; = iHigh (NULL, 1440, 2); mTradeData # 91; 4 # 93; = iLow (NULL, 1440, 2); }} if (mTradeData # 91; 0 # 93; == 1) {mTradeData # 91; 6 # 93; = NormalizeDouble (OrderOpenPrice () - OrderStopLoss (), mLotSizeDigits); } else {mTradeData # 91; 6 # 93; = NormalizeDouble (OrderStopLoss () - OrderOpenPrice (), mLotSizeDigits); } mOpenUpdated = true; }/jeśli KUPUJSPRZEDAJ}/jeśli Symb jeśli (mOp! = true) {int mError = GetLastError (); Alert (Symbol (), Error UpdateOpen =, ErrorDescription (mError)); }}/dla powrotu c; }
    TIA.
    M.

  2. #2
    1 Załącznik (y) OK Wygrywam nagrodę i dostaję dzień wolny na 25 .......... Wywołanie DelPending (); sprawdzał zamówienia i był poddawany cyklom aż do ostatniego zamówienia, a tym samym podania danych do tego zamówienia. Oczywiście to połączenie musi być w innym miejscu. Muszę się starzeć i powoli :-( M.

  3. #3
    Masz prawy nawias, który nie jest potrzebny w poniższym kodzie: Wstawiony kod, jeśli (OrderSymbol () == Symbol ()) OrderMagicNumber () == mMagicN) I upewnij się, że nie wykonasz wywołania OrderSelect (...) wewnątrz twojego initial OrderSelect (...).

  4. #4
    Cześć Ferru, dzięki za odpowiedź, twój talent zawsze był szanowany. Dokładnie o ”)”, ale to nie był problem (dobrze zauważony). Tak, to było drugie połączenie z pierwszym zamówieniem, wybierz ... ale dla mojego życia nie widziałem tego przez długi czas !!! Jeszcze raz dzięki, M. EDIT: A kolejna nagroda (dzień wolny od handlu w Nowy Rok) trafia do osoby, która może mi powiedzieć, ile razy nalegałem, aby MT4 było winne! ;-)

  5. #5

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.