Typy parametrów w cTrader Algo
W tym artykule i odpowiadającym mu filmie pokażemy, jak możesz deklarować i używać konfigurowalnych parametrów w swoich cBotach i wskaźnikach. Opracujemy prosty wskaźnik i pokażemy Ci, jak skonfigurować parametry z interfejsu użytkownika cTrader. Wyjaśnimy również, jakiego rodzaju parametrów możesz używać w cBocie lub wskaźniku cTrader i zilustrujemy, jak są one deklarowane i używane w Twoim kodzie.
Konfigurowalne parametry
Konfigurowalne parametry to konfigurowalne wartości, które można ustawić podczas dodawania, uruchamiania lub używania algorytmu. Pozwalają Tobie i innym użytkownikom dostosować zachowanie cBotów, wskaźników i wtyczek bez modyfikowania kodu źródłowego.
Używanie parametrów w cBotach, wskaźnikach i wtyczkach
- W przypadku cBotów możesz konfigurować zmienne lub ustawienia, które wpływają na wykonanie, takie jak poziomy stop loss i take profit.
- W przypadku wskaźników możesz konfigurować zmienne, które wpływają na wyniki wskaźnika, takie jak rozważane okresy lub źródło danych, które ma być używane.
- W przypadku wtyczek możesz konfigurować zmienne, takie jak opcje interfejsu użytkownika lub klucze API, które określają, jak wtyczka współdziała z interfejsem lub usługami zewnętrznymi.
Jak wyjaśniono wcześniej, cTrader obsługuje te typy parametrów:
intdoublestringboolDataSeriesTimeFrameenumColorDateTimeDateOnlyTimeSpanSymbolSymbol[](multi-symbol)Enum[](multi-enum)TimeFrame[](multi-period)
Uwaga
Algorytmy Python używają konfigurowalnych parametrów zadeklarowanych w ich plikach .cs.
Tworzenie prostego wskaźnika z parametrami
Aby zademonstrować, jak możesz używać parametrów we wskaźnikach niestandardowych, utworzymy nowy wskaźnik i nazwiemy go Standard Deviation.
Aby obliczyć odchylenie standardowe, musimy najpierw obliczyć średnią ruchomą ceny. Następnie zadeklarujemy parametry potrzebne dla wskaźnika średniej ruchomej, zaczynając od okresu średniej ruchomej.
1 | |
Każda właściwość publiczna, która ma jeden z obsługiwanych typów, może stać się parametrem wskaźnika. Aby przekształcić naszą właściwość MaPeriod w parametr, wystarczy dodać wymaganą deklarację.
1 2 | |
Atrybut Parameter instruuje cTrader, aby przedstawił tę właściwość jako parametr w panelu parametrów wskaźnika, używając zdefiniowanej nazwy ("MA Period").
Jak pokazano poniżej, atrybut Parameter pozwala również zdefiniować niektóre właściwości parametru, takie jak wyświetlana nazwa, wartość domyślna, grupa, w której ten parametr zostanie umieszczony, wartości maksymalne i minimalne, a także krok, o który parametr będzie się zmieniał po naciśnięciu strzałek w górę i w dół (tylko dla wartości liczbowych).
1 2 | |
Teraz dodamy pozostałe parametry potrzebne dla wskaźnika średniej ruchomej. Parametr MaType pomoże nam określić typ średniej ruchomej. Jest to enum, który pojawi się jako menu rozwijane w interfejsie użytkownika cTrader.
1 2 | |
Parametr Source da użytkownikom możliwość określenia źródła danych dla naszego wskaźnika średniej ruchomej. Ten parametr jest typu DataSeries.
1 2 | |
Teraz, gdy wymagane parametry są zadeklarowane, zdefiniujemy i zainicjujemy naszą średnią ruchomą.
1 2 3 4 5 6 | |
W tym momencie jesteśmy gotowi do zaimplementowania obliczeń dla naszego odchylenia standardowego. Domyślny szablon kodu zawiera już właściwość Output, której możemy użyć do wyświetlenia wyników obliczeń.
1 2 | |
Wreszcie, ale nie mniej ważne, zaimplementujemy obliczenia odchylenia standardowego w metodzie Calculate().
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Jeśli dodamy nasz wskaźnik do wykresu, powinniśmy zobaczyć wszystkie nasze parametry w oknie Dodaj instancję.
Dodaj dodatkowe parametry
Po ukończeniu naszego odchylenia standardowego możemy również dodać linię poziomą, która będzie służyć jako wizualny próg dla wskaźnika. W tym celu będziemy musieli dodać kilka dodatkowych parametrów.
Pierwszy z nich będzie parametrem logicznym, który określi, czy nasza linia będzie wyświetlana, czy nie.
1 2 | |
Parametr LineLevel pozwoli nam określić poziom ceny, na którym linia powinna zostać narysowana.
1 2 | |
Dodamy również parametr umożliwiający wybór koloru linii.
1 2 | |
Mając wszystkie niezbędne parametry na miejscu, możemy napisać kod do narysowania linii na wykresie, do którego dołączony jest nasz wskaźnik.
1 2 3 4 | |
Jeśli ponownie zbudujemy wskaźnik i dodamy nową instancję, będziemy mogli ukryć/pokazać linię, przesunąć ją w górę lub w dół i wybrać kolor według naszego wyboru jako kolor linii.
Jak pokazano w poniższym przykładzie, parametry mogą być również używane do zapewnienia, że nasz wskaźnik jest wyświetlany tylko wtedy, gdy zostanie dodany do wykresów dla określonych ram czasowych.
1 2 | |
W metodzie Initialize() sprawdzimy ramy czasowe wykresu, do którego dołączony jest nasz wskaźnik. Jeśli nie są równe wartości parametru TF, zapobiegniemy wyświetlaniu wskaźnika.
1 2 3 4 5 6 7 8 9 10 11 12 | |
Mamy nadzieję, że ten przewodnik był pomocny w zrozumieniu parametrów i sposobu ich działania w handlu algorytmicznym cTrader.