Pierwsza wersja EA1 blisko ukończenia - potrzebujesz pomocy
Strona 1 z 5 123 ... OstatniOstatni
Pokaż wyniki od 1 do 10 z 41

Wątek: Pierwsza wersja EA1 blisko ukończenia - potrzebujesz pomocy

  1. #1
    Dowolni programiści, którzy mogą szybko przejrzeć mój wpis, aby pomóc mi dodać obsługę błędów i upewnić się, że rozpoznawanie biletów jest poprawne itd.


    https://www.forex-instant.com/tradin...g-journal.html

    Przyjdę tutaj i opublikuję go, gdy już go ukończę, co powinno zająć tylko kilka minut, aby doświadczony programista mógł go przejrzeć i uporządkować, tak aby pasował do najlepszych praktyk

  2. #2
    1 Załącznik (y) W testerze egii otwiera to tylko jedną transakcję ... daje mi 131 i 4051 błędów ..... przynajmniej jest opłacalny :-) Czy ktoś może mi wyjaśnić, dlaczego? Ponadto, funkcja tp daje taką samą odpowiedź 11 zamiast być losową .... czy jest jakaś modyfikacja potrzebna dla tej funkcji? Planuję mieć randomizer tp, który jest pokazywany brokerowi, a następnie prawdziwy, który jest ukryty ... po prostu staram się uzyskać podstawowy
    https://www.forex-instant.com/attach...1563763803.mq4

  3. #3
    Nie miałem szansy spojrzeć na twój kod, ale błędy są na to: 131 błąd: jest nieprawidłowy wolumen handlu, więc musisz upewnić się, że ta wartość nie jest mniejsza lub większa niż pozwala na to broker. Błąd 4051: jest nieprawidłową wartością parametru funkcji, sprawdź swoje funkcje (prawdopodobnie te niestandardowe, które napisałeś) i upewnij się, że mają prawidłowe wartości parametrów ... nawias, wartości wewnątrz nawiasów itp.

  4. #4
    Thanks... I think I fixed that problem now... but now it is not following the rules and opening multiple orders per line I accidentally had this on three charts on my demo, and it opened up a number of orders..... nice to make 10% on 10k demo account in seconds, but not the way it was intended to work :-) What do I need to do in order to have only 1 line per trade?.... re-attaching and including indiors as well Edit: Fixed the multiple openings.... error for line2 code.... now egy tester is only opening 4 lines (all wins, minimal drawdown which is the purpose of this EA).... anyway, when the t/p hits, it is not resetting that line to 0 now, thus not opening more trades... re-attaching most updated EA version
    https://www.forex-instant.com/attach...0535111063.mq4
    https://www.forex-instant.com/attach...1923463858.mq4
    https://www.forex-instant.com/attach...1005853592.mq4

  5. #5
    Widzę, co teraz robi .... Te dwie rzeczy wymagają korekty: # 1 Zresetuj linie kolejowe do 0, gdy dzieje się TP (teraz kończy się po jednej transakcji) # 2 Jest pewien błąd w tym, że otwiera wszystkie 4 zleceń w tym samym czasie zamiast przestrzegania zasad .... powinien otwierać tylko zamówienia na krzyże linii z odpowiednią konfiguracją .... Myślę, że ma to coś wspólnego z potrzebą liczyć barów lub coś, ale nie jestem pewien

  6. #6
    Nie ma to nic wspólnego z twoim problemem, ale uważam, że powinieneś ponownie przejrzeć swoją funkcję CloseMarketOrders (), ponieważ logicznie ... Nie sądzę, że to zadziała. Pamiętaj, że indeks pozycji transakcji w Twojej puli handlowej jest bardzo podobny do indeksu tablicowego z pierwszą pozycją zaczynającą się od 0, powiedzmy, że masz 10 zamówień. ich indeks pozycji będzie wynosił od 0 do 9. OrdersTotal () daje ci liczbę 10, ponieważ w Twojej puli handlowej jest 10 transakcji. Ale jeśli wyrzucisz tę liczbę prosto do OrderSelect, to powie Ci, że nie ma takiej kolejności ani szyku z umówionego wyjątku. Nawet jeśli nie jest to szansa, trwa, masz na to czas (cntgt; 0). oznacza to, że jeśli jest tylko jedno zamówienie lub zostało mu 1 zamówienie, które znajduje się na pozycji 0, nie zostanie ono przetworzone. ponieważ nie pasuje do twojego stanu. więc ... zasadę, jeśli chodzi o zapętlenie do tyłu, użyj ich zamiast tego. Wstawiony kod cnt = OrdersTotal () - 1; while (cnt gt; = 0) {//bla bla bla ... cnt--; } alternatywnie możesz po prostu użyć pętli for, co wolisz. Wstawiony kod int numberOfOrders = OrdersTotal (); if (numberOfders gt; 0) {for (int cnt = numberOfOrders-1; cnt gt; = 0; cnt--) {//blah blah blah ...}} regards, Zen

  7. #7
    możesz zająć się ur # 1, używając tej funkcji Wstawiony kod void CheckAndReset () {if (line1ticket gt; 0) {if (! OrderSelect (line1ticket, SELECT_BY_TICKET, MODE_TRADES)) {line1ticket = 0; line1trades = 0; }} if (line1ticket gt; 0) {if (! OrderSelect (line2ticket, SELECT_BY_TICKET, MODE_TRADES)) {line2ticket = 0; line2trades = 0; }} if (line3ticket gt; 0) {if (! OrderSelect (line3ticket, SELECT_BY_TICKET, MODE_TRADES)) {line3ticket = 0; line3trades = 0; }} if (line4ticket gt; 0) {if (! OrderSelect (line4ticket, SELECT_BY_TICKET, MODE_TRADES)) {line4ticket = 0; line4trades = 0; }}} poglądy, Zen p.s., po prostu myśl, ta funkcja byłaby 1/4 jej bieżącym rozmiarem, gdybyś użył tablic do przechowywania i zarządzania wartością linii # i wartości # linii.

  8. #8
    1 Załączniki OK, tutaj jest aktualizacja .... Kiedy używam pętli for, ciągle daje błąd 138 wiadomości bez otwartych zamówień Zamówienia zakupu działały poprawnie (nie otwierają się wszystkie 4 jednocześnie) z wyjątkiem tego nie resetuje zamówień liniowych w TP. Zlecenia sprzedaży otwierały wszystkie 4 w tym samym czasie .... więc skopiowałem logikę kupna i zresetowałem wszystko, aby logika sprzedaży była sprawdzana, czy to by rozwiązało problem. Również, dlaczego nie jest tp losowy? Jest to zawsze niska kwota jednorazowa zamiast losowej liczby pomiędzy dwoma zakresami
    https://www.forex-instant.com/attach...5811958515.mq4

  9. #9

    Cytat Zamieszczone przez ;
    OK, tutaj jest aktualizacja .... Kiedy używam pętli for, ciągle daje błąd 138 wiadomości bez otwartych zamówień
    Poprawiłem kod w moim poście powyżej. Sprawdź ponownie.

  10. #10
    i czy możesz poświęcić trochę czasu na uporządkowanie kodów z odpowiednimi wcięciami. kody w tym samym bloku powinny być wyrównane. bloki w innym bloku powinny być wcięte. Twoje kody nie są gorsze, które czytałem, ale zdecydowanie jest miejsce na poprawę jeśli chodzi o czytelność. możesz użyć wskaźnika, który zamieściłem jako przewodnik. pozdrowienia, Zen

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.