Potrzebujesz pomocy z prostym kodowaniem
Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki od 1 do 10 z 13

Wątek: Potrzebujesz pomocy z prostym kodowaniem

  1. #1
    Testuję na prostym return(x) lub return(y) dla EA, ale z komunikatem o błędzie testFunction - deklaracje funkcji są dozwolone tylko w przestrzeni nazw lub w zakresie klas, czy ktoś może mi doradzić, gdzie popełniłem błąd? Dziękuję

    Uczę się kodować, śledząc https://www.mql5.com/en/forum/120791 ...

    Wstawiony kod wejściowy bool Exit_Only = 0; int OnInit(){ return(INIT_SUCCEEDED); } void OnTick(){ int testFunction(){ if(Exit_Only==1) return(1); return(0);//w przeciwnym razie oczekiwano 0 } int resExitOnly=funkcja testowa(); if(resExitOnly==1){ Comment(Tylko wyjście); Komentarz(zarówno Wejście Wyjście);//else wyjście } }

  2. #2

    Cytat Zamieszczone przez ;
    {quote} Po prostu zastąp ten wiersz następującym for(int cnt=0;cntlt;OrdersTotal();cnt ){ bool isSelected = OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
    Wielkie dzięki, teraz działa bez ostrzeżenia. Jeśli nie udzielisz mi odpowiedzi, nie mogę znaleźć rozwiązania na resztę mojego życia, LOL. Zabawne, że OrderSelect zwraca wartość logiczną, czyli muszę sprawdzić, czy OrderSelect zwraca prawdę czy fałsz. Dzięki jeszcze raz.

  3. #3

    Cytat Zamieszczone przez ;
    {cytat} Szczerze mówiąc, nie wiem, co zrobić z twoją sugerowaną odpowiedzią, LOL. W rzeczywistości mój powyższy skrypt jest pełnym skryptem, działa, ponieważ nie ma błędu na załączony obraz, ale MetaEditor pokazuje komunikat ostrzegawczy o zwracanej wartości 'OrderSelect' powinien być zaznaczony, oznacza to, że jest wada, ale nie wiedzieć, jak go rozwiązać. Mam nadzieję, że nie masz nic przeciwko odpowiedniemu poprawieniu pełnego skryptu, aby w ogóle nie wyświetlał komunikatu ostrzegawczego. Dziękuję Ci. {obraz}
    Po prostu zastąp tę linię tym wstawionym kodem for(int cnt=0;cntlt;OrdersTotal();cnt ){ bool isSelected = OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

  4. #4
    1 załącznik(i)
    Cytat Zamieszczone przez ;
    {quote} OrderSelect zwraca wartość logiczną, musisz sprawdzić, czy OrderSelect zwraca wartość true lub false bool x = OrderSelect() lub if(OrderSelect())
    Szczerze mówiąc Quants, nie wiem, co zrobić z twoją sugerowaną odpowiedzią, LOL. W rzeczywistości mój powyższy skrypt jest pełnym skryptem, działa, ponieważ nie ma błędu na załączony obraz, ale MetaEditor pokazuje komunikat ostrzegawczy o zwracanej wartości 'OrderSelect' powinien być zaznaczony, oznacza to, że jest wada, ale nie wiedzieć, jak go rozwiązać. Mam nadzieję, że nie masz nic przeciwko odpowiedniemu poprawieniu pełnego skryptu, aby w ogóle nie wyświetlał komunikatu ostrzegawczego. Dziękuję Ci.

  5. #5
    Cytat Zamieszczone przez ;
    {quote} Funkcja zwraca 1 i 0 i edytuje tekst na podstawie warunku. Zamiast wielokrotnego wywoływania komentarza, możesz po prostu edytować zmienną tekstową, którą chcesz wydrukować za pomocą funkcji Wynik funkcji. Cieszę się, że twój problem został rozwiązany
    Wielkie dzięki Quants, jesteś bardzo miły. Jako początkujący, używanie komentarza jest najprostszym sposobem na rozpoczęcie, ale kiedy wejdziesz w dogłębną praktyczność, taką jak skomplikowane obliczenia, będzie to nazywane wielokrotnie nieprzerwanym na zasadzie tiku, a nie zwykłym tekstem. Wejdę na ten etap później, gdy tylko moje umiejętności kodowania będą w porządku.

  6. #6

    Cytat Zamieszczone przez ;
    Drodzy programiści, mam kolejne pytanie dotyczące scenariusza. Ten skrypt ma zliczać liczbę otwartych transakcji KUPNA i otwartych transakcji SPRZEDAŻY, ale ma ostrzeżenie, że zwracana wartość 'OrderSelect' powinna być zaznaczona, uprzejmie doradź, dziękuję. int magicNum = 1; void OnStart(){ int cntBuyOrders=0; int cntSellOrders=0; for(int cnt=0;cntlt;OrdersTotal();cnt ){ OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if (OrderType()==OP_BUY OrderSymbol()==Symbol() OrderMagicNumber()==magicNum){ cntBuyOrders ; } if (OrderType()==OP_SELL OrderSymbol()==Symbol() OrderMagicNumber()==magicNum){...
    OrderSelect zwraca wartość logiczną, musisz sprawdzić, czy OrderSelect zwraca prawdę lub fałsz Wstawiony kod bool x = OrderSelect() lub if(OrderSelect())

  7. #7
    Drodzy programiści, mam kolejne pytanie dotyczące scenariusza. Ten skrypt ma zliczać liczbę otwartych transakcji KUPNA i otwartych transakcji SPRZEDAŻY, ale ma ostrzeżenie, że zwracana wartość 'OrderSelect' powinna być zaznaczona, uprzejmie doradź, dziękuję. Wstawiony kod int magicNum = 1; void OnStart(){ int cntBuyOrders=0; int cntSellOrders=0; for(int cnt=0;cntlt;OrdersTotal();cnt ){ OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if (OrderType()==OP_BUY OrderSymbol()==Symbol() OrderMagicNumber()==magicNum){ cntBuyOrders ; } if (OrderType()==OP_SELL OrderSymbol()==Symbol() OrderMagicNumber()==magicNum){ cntSellOrders ; } } MessageBox( Informacja Całkowita liczba otwartych zamówień BUY : IntegerToString(cntBuyOrders) \n Informacja Całkowita liczba otwartych zamówień SPRZEDAŻY : IntegerToString(cntSellOrders) \n ); }

  8. #8
    Cytat Zamieszczone przez ;
    {cytat} Dzięki , ale twoje rozwiązanie nie jest tym, czego chcę, ponieważ ciąg tekstowy nie jest moim kierunkiem, ale chcę dowiedzieć się, jak działają return(0) i return(1) dla funkcji. W każdym razie dzięki.
    Funkcja zwraca 1 i 0 i edytuje tekst na podstawie warunku. Zamiast wielokrotnego wywoływania komentarza, możesz po prostu edytować zmienną tekstową, którą chcesz wydrukować za pomocą funkcji Wynik funkcji. Cieszę się, że twój problem został rozwiązany

  9. #9

    Cytat Zamieszczone przez ;
    input bool Exit_Only = 0; int OnInit(){ return(INIT_SUCCEEDED); } int testFunction() { if(Exit_Only==1) return(1); else return(0);//else oczekiwanie 0 } void OnTick(){ int resExitOnly=testFunction(); if(resExitOnly==1){ Comment(Tylko wyjście); } else { Komentarz(oba wejście Wyjście);//else wyjście } }
    Dzięki Mic_FX, tak, twoje rozwiązanie jest tym, czego chcę, działa! Będąc początkującym nauczyłem się dzisiaj czegoś, dzięki

  10. #10

    Cytat Zamieszczone przez ;
    {cytat} Musisz zadeklarować swoje funkcje poza OnTick Function i wywołać je w OnTick jako TestFunction(); input bool Exit_Only = 0; int OnInit() { return(INIT_SUCCEEDED); } void OnTick(){ string text = oba Entry Exit; int resExitOnly=funkcja testowa(); if(resExitOnly){ text = Tylko wyjście}; Komentarz(tekst);//else wyjście } int testFunction(){ ExitOnly == 1 ? powrót 1 : powrót 0 }
    Dzięki Quants, ale twoje rozwiązanie nie jest tym, czego chcę, ponieważ ciąg tekstowy nie jest moim kierunkiem, ale chcę dowiedzieć się, jak działają return(0) i return(1) dla funkcji. W każdym razie dzięki.

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.