C++ zamiast MT4

Tu można dyskutować o wszystkich sprawach związanych z rynkiem Forex.
lekarz2
Gaduła
Gaduła
Posty: 172
Rejestracja: 17 cze 2010, 16:30

C++ zamiast MT4

Nieprzeczytany post autor: lekarz2 »

Chciałbym zamiast handlować za pomocą platformy MT4 wykorzystać C++. Problem w tym, że nie bardzo wiem jak nawiązać połączenie i ściągać dane (kursy, otwarte pozycje itp.) i wysyłać ordery do wykonania. Czy ktoś mógłby mnie nakierować?

WojtexWay
Gaduła
Gaduła
Posty: 145
Rejestracja: 18 wrz 2012, 19:22

Re: C++ zamiast MT4

Nieprzeczytany post autor: WojtexWay »

Sposobów na połączenie jest całkiem sporo i jak dobrze poszukasz to na pewno znajdziesz takie wątki na tym forum.
Zastanawiam się jednak na jakim poziomie masz opanowane C++, że o tym myślisz? Wiesz w ogóle czym jest C++? ;]
Bo mam dziwne wrażenie, że będzie analogicznie jak z tym Twoim tematem dot. rachunku prawdopodobieństwa...

Awatar użytkownika
por. Borewicz
Gaduła
Gaduła
Posty: 93
Rejestracja: 25 cze 2014, 11:58

Re: C++ zamiast MT4

Nieprzeczytany post autor: por. Borewicz »

Zależy od brokera. Np. dla mforex dokumentacje protokołu masz tutaj:
http://www.mforex.pl/mForex-api-docs

Są też implementacje bibliotek klienckich w niektórych językach (np. C#). Nie ma c++, ale dostarczony jest plik .proto który jak sądzę można wykorzystać do wygenerowania takiej biblioteki (a dokładniej części odpowiedzialnej za tworzenie komunikatów do serwera).
https://developers.google.com/protocol- ... s/overview

Czy dobrze rozumiem, że masz już stworzony swój genialny system i jedyne czego Ci brakuje to spięcie go z serwerami brokera?

Awatar użytkownika
MaRCHeW
Pasjonat
Pasjonat
Posty: 1213
Rejestracja: 20 gru 2005, 22:19

Re: C++ zamiast MT4

Nieprzeczytany post autor: MaRCHeW »

Witam :)

Możesz wyjaśnić do czego potrzebna Ci jest kombinacja C++ i MT4? Bo wydaje mi się, że lepiej użyć MT5 i mieć możliwość programowania EA i indyków w C++ bez kombinacji alpejskich. MQL5 to przecież C++ (okrojone).

Pozdrawiam
Karol Marchewka

lekarz2
Gaduła
Gaduła
Posty: 172
Rejestracja: 17 cze 2010, 16:30

Re: C++ zamiast MT4

Nieprzeczytany post autor: lekarz2 »

por. Borewicz@ Po pierwsze dzięki za info. Bardzo się przydało. Ten mój genialny system jest nadal opracowywany. Wymaga jeszcze sporo liczenia.

MaRCHeW@ Mimo wszystko C++ daje więcej możliwości. Czy MT5 tester jest równie szybki co w MT4?

WojtexWay@ Spokojna głowa.
cout<<"Tematu dotyczącego Rachunku Prawdopodobieństwa chyba dokładnie nie przeczytałeś."<<endl;

WojtexWay
Gaduła
Gaduła
Posty: 145
Rejestracja: 18 wrz 2012, 19:22

Re: C++ zamiast MT4

Nieprzeczytany post autor: WojtexWay »

MaRCHeW pisze:MQL5 to przecież C++ (okrojone).
Polemizowałbym z tym stwierdzeniem. Pomijając takie głupoty jak chociażby brak możliwości zwracania referencji przez metody/operatory, co mocno utrudnia zaimplementowanie np. różnych kontenerów (chodzi np. o przeładowanie operatora "[]", który zwraca wynik przez wartość i ewentualna zmiana tej wartości musi odbywać się przez dodatkową metodę a nie bezpośrednio przez operator przypisania "=" - pominę kwestie wydajnościowe z tym związane) to porównując MQL5 do obowiązującego standardu C++ (C++11/14) to słowo "okrojone" jest dość łagodnym określeniem.
lekarz2 pisze:Czy MT5 tester jest równie szybki co w MT4?
Raczej porównywalny. Optymalizator jest za to szybszy, chyba, że w MT4 wprowadzili możliwość wykorzystania większej liczby rdzeni (nie mam MT4 więc nie wiem, ale wątpię).
lekarz2 pisze:cout<<"Tematu dotyczącego Rachunku Prawdopodobieństwa chyba dokładnie nie przeczytałeś."<<endl;
Brawo! Czyli umiesz już wyświetlać text w konsoli - tyle, że przeważnie od tego zaczyna się naukę programowania... ;-).

Co do tematu dot. rachunku prawdopodobieństwa to napisałem Ci w nim ostatnio dość długiego posta zwracającego uwagę na kilka niuansów - szkoda, że się do niego nie odniosłeś.

green7
Maniak
Maniak
Posty: 2060
Rejestracja: 16 sty 2008, 18:44

Re: C++ zamiast MT4

Nieprzeczytany post autor: green7 »

lekarz2 pisze:Chciałbym zamiast handlować za pomocą platformy MT4 wykorzystać C++. Problem w tym, że nie bardzo wiem jak nawiązać połączenie i ściągać dane (kursy, otwarte pozycje itp.) i wysyłać ordery do wykonania. Czy ktoś mógłby mnie nakierować?
Ogólnie masz parę możliwości:
- najprościej znaleźć jest brokera, który udostępnia API w C++.
Takim znanym brokerem jest np. Interactive Brokers i pewnie znajdziesz jakieś przykłady zastosowania ich API w sieci. Drobny minus to taki, że minimalna wpłata tam to 10K USD - ale w sumie to żaden problem, dużo więcej wysiłku będzie wymagała walka z C++....

- drugie rozwiązanie to znaleźć brokera udostępniającego protokół FIX. Tutaj wpłata minimalna może być większa, bo wielu brokerów (np. DukasCopy) dla udostępnienia FIX'a wymaga depozytu 50-100K USD, ale jak poszukasz to pewnie znajdziesz takiego ze skromniejszymi wymogami. Następnie musisz tego FIX'a oprogramować w C++. Możesz użyć darmowej biblioteki QuickFix lub ewentualnie kupić płatne rozwiązanie. To drugie zapewne będzie wydajniejsze od QuickFix'a, może niektóre zadania upraszczać, ale kosztuje niewąsko więc zapewne odpada.

- trzeci sposób znaleźć brokera który udostępnia opis swojego protokołu. I zrobić sobie w C++ obsługę tegoż protokołu. Ktoś tu wspomniał o mforexie pewnie się nada, jest też np. Oanda - ze swoim API restowym co powinno się dać łatwo ogarnąć w C++

A tak podsumowując:
- powinieneś posłuchać kolegów. Pytają się "po co Ci to" ? Innymi słowy: "jaki masz problem", że do jego rozwiązania potrzebujesz C++. W dzisiejszych czasach komputery są dosyć szybkie, w zasadzie jeśli nie chcesz robić jakiegoś "HFT" to można użyć do fx dowolnego języka, gdzie i szybciej się go nauczysz i mniej błędów popełnisz. A sądząc po pytaniu jakie zadałeś to raczej zgadzam się z przedmówcami: na asa w C++ to Ty nie wyglądasz :)
No chyba, że się mylę i takie rzeczy jak np. x = (*((type *&)(pIP))++); to dla Ciebie kaszka z mleczkiem ...
Green
Obrazek
Obrazek

lekarz2
Gaduła
Gaduła
Posty: 172
Rejestracja: 17 cze 2010, 16:30

Re: C++ zamiast MT4

Nieprzeczytany post autor: lekarz2 »

green7@
Na początek szukam brokera, który będzie dawał mi możliwość handlu przy użyciu niewielkich środków nawet poniżej 100 PLN. Najpierw muszę zrobić trochę testów. Potem będę myślał o większym wkładzie. Nie tworze HFT.

green7
Maniak
Maniak
Posty: 2060
Rejestracja: 16 sty 2008, 18:44

Re: C++ zamiast MT4

Nieprzeczytany post autor: green7 »

lekarz2 pisze:green7@
Na początek szukam brokera, który będzie dawał mi możliwość handlu przy użyciu niewielkich środków nawet poniżej 100 PLN. Najpierw muszę zrobić trochę testów. Potem będę myślał o większym wkładzie. Nie tworze HFT.
Jak nie tworzysz HFT to po cholerę Ci C++.
Użyj C# - dużo łatwiejszy język, właściwie odpada Ci zarządzanie pamięcią - co w C++ wymaga sporej uwagi i może spore problemy generować. No i środowisko przyjaźniejsze.
W C# masz gotowe biblioteki choćby: w mforex, x-station (xtb) i pewnie paru innych. No i w C# masz też gotowe platformy: CTradera, ProTradera itd.

Aha co do C++ to przypomniałem sobie jeszcze: Oanda daje parę przykładów jak skorzystać z ich restowego API, również API Bossy jest w C++.
Więc w sumie tylko siadać i kodować :)
Green
Obrazek
Obrazek

ODPOWIEDZ