Program handlowy: własne reguły w StrategyQuant X
Słyszałeś o oprogramowaniu, które automatycznie wykonuje reguły handlowe, i zastanawiasz się, jak taki program właściwie jest zbudowany. Większość wyjaśnień pozostaje na powierzchni: klika się kilka reguł, uruchamia backtest, gotowe. Często brakuje tu spojrzenia na drugi poziom, tę część, w której sam piszesz kod, aby sterować procesami wykraczającymi poza proste klikanie.
Ten artykuł pokazuje ci dokładnie tę część na przykładzie StrategyQuant X: jakie punkty wejścia oprogramowanie udostępnia dla własnego kodu, co pokazują za ich pomocą udokumentowane przykłady, jak taki przykład wywołuje optymalizację bezpośrednio przez kod i jak własny interfejs łączy twój kod z programem głównym. Na końcu dowiesz się także, gdzie możesz bezpłatnie uczyć się dalej oraz co backtest naprawdę ci mówi, a czego nie.
Programowanie zamiast samego klikania: Code Editor w StrategyQuant X
Dla traderów, którzy chcą wyjść poza gotowe klocki i pisać własny kod, StrategyQuant X dokumentuje kilka punktów wejścia w tak zwanym edytorze kodu. Należą do nich publiczny interfejs programistyczny (Public API), praca z grupami wyników (Results Groups), dodawanie własnych wskaźników i sygnałów, uzupełnianie kolumn lub filtrów bazy danych, logowanie, włączanie własnych bibliotek JAR oraz importowanie i eksportowanie własnych fragmentów kodu, tak zwanych snippetów.
Ta lista opisuje udokumentowane punkty wejścia, a nie pełne wprowadzenie do programowania. Kto chce korzystać z tych funkcji, nadal potrzebuje podstawowej wiedzy z programowania, dokumentacja nie zastępuje szkolenia z programowania.

Co pokazuje udokumentowany przykład kodowania
Obok samego wyliczenia punktów wejścia istnieją udokumentowane przykłady tak zwanych Coding Sessions. Pokazują one, jak programistycznie uruchamiać optymalizacje i backtesty, jak testy odporności działają za pomocą kodu, jak zmieniać parametry strategii i ustawienia zadań własnym kodem oraz jak wczytać dane historyczne do snippetu.
Te przykłady zakładają pracę w edytorze kodu ze snippetami opartymi na Javie. Opisują przeszłe konfiguracje testowe, a nie wyniki zapewnione z góry, i nie pokazują strategii już sprawdzonych i potwierdzonych jako przynoszące zysk. Kto chce odtworzyć te przykłady, ten również potrzebuje umiejętności programowania, bez kodu w tym miejscu się nie obejdzie.

Przykład w szczegółach: wywołanie optymalizacji kodem
Jeden z udokumentowanych przykładów nosi nazwę CAOptimizationByProgramming. Snippet pokazuje, jak wywołać optymalizację pierwszej strategii w bazie danych (Databank) za pomocą własnego kodu, zamiast uruchamiać ten proces ręcznie przez interfejs.
Ten przykład zakłada własny kod Java w Code Editor i pokazuje udokumentowany przypadek użycia, a nie ogólną obietnicę dla każdego workflow optymalizacji. Kodu nie da się przenieść jeden do jednego na każdą inną konfigurację bez dostosowania, a przykład nie dowodzi, że optymalizacja wywołana kodem prowadzi do lepszych wyników niż uruchomiona ręcznie.
Interfejs Program: własna logika poza klockami
Dla bardziej złożonej własnej logiki StrategyQuant X dokumentuje interfejs o nazwie Program. Za jego pośrednictwem snippety lub inne pluginy mogą wywoływać funkcje z programu głównego lub z innych pluginów. To droga, przez którą własny kod łączy się z resztą programu, gdy same wizualne klocki już nie wystarczają.
Ten interfejs jest skierowany do traderów, którzy już piszą własny kod w Code Editor. Udostępnia udokumentowane funkcje, a nie nieograniczony ani nieudokumentowany dostęp, i tu również wiedza programistyczna pozostaje warunkiem, by użyć go sensownie.

Dalsza nauka: darmowy kurs na YouTube
Jeśli chcesz wejść głębiej w temat, na kanale YouTube producenta jest kompletny kurs handlu algorytmicznego jako seria wideo. Obejmuje strategie dla rynków Forex, futures i akcji.
Ten kurs jest poza samym oprogramowaniem, to zewnętrznie hostowany materiał wideo i nie jest częścią żadnego konkretnego poziomu licencji. Nie zastępuje własnej praktyki i nie jest obietnicą umiejętności warsztatowych ani wyników na plus w backteście, jest punktem wyjścia, od którego uczysz się dalej.
Co backtest i optymalizacja mówią ci, a czego nie
Wszystko, co w tym artykule opisano w przykładach optymalizacji, backtestu i testów odporności, opiera się na danych historycznych. Backtest pokazuje ci, jak reguła zachowałaby się w przeszłości przy przyjętych założeniach. Nie pokazuje ci, jak ta sama reguła zachowa się jutro.
Nawet snippet taki jak CAOptimizationByProgramming tego nie zmienia: uruchamia optymalizację szybciej i w sposób bardziej powtarzalny, ale nie mówi nic o tym, czy zoptymalizowana strategia utrzyma się poza testowanym okresem. Obserwacja i utrzymanie działającego programu pozostaje twoim zadaniem, automatyczne wykonywanie reguł cię od tego nie zwalnia.
Ten artykuł ma charakter edukacyjny i nie stanowi porady inwestycyjnej. Wyniki historyczne, także z backtestów, nie gwarantują przyszłych wyników. Handel instrumentami finansowymi wiąże się z ryzykiem i możesz stracić pieniądze.
Ten artykuł ma charakter edukacyjny i nie jest doradztwem inwestycyjnym. Wyniki osiągnięte w przeszłości nie gwarantują przyszłych wyników.
A jak ty to robisz? Opowiedz w społeczności. Za darmo, w twoim języku.
Zarejestruj się za darmo