C++ zamiast MT4
C++ zamiast MT4
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ć?
Re: C++ zamiast MT4
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...
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...
- por. Borewicz
- Gaduła
- Posty: 93
- Rejestracja: 25 cze 2014, 11:58
Re: C++ zamiast MT4
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?
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?
Re: C++ zamiast MT4
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

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
Re: C++ zamiast MT4
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;
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;
Re: C++ zamiast MT4
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.MaRCHeW pisze:MQL5 to przecież C++ (okrojone).
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:Czy MT5 tester jest równie szybki co w MT4?
Brawo! Czyli umiesz już wyświetlać text w konsoli - tyle, że przeważnie od tego zaczyna się naukę programowania... ;-).lekarz2 pisze:cout<<"Tematu dotyczącego Rachunku Prawdopodobieństwa chyba dokładnie nie przeczytałeś."<<endl;
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ś.
Re: C++ zamiast MT4
Ogólnie masz parę możliwości: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ć?
- 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 ...
Re: C++ zamiast MT4
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.
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.
Re: C++ zamiast MT4
Jak nie tworzysz HFT to po cholerę Ci C++.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.
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ć
