Zlecanie i modyfikacja zleceń

O jezykach programowania w platformach i nie tylko.
panprezes
Bywalec
Bywalec
Posty: 18
Rejestracja: 26 lut 2010, 12:54

Zlecanie i modyfikacja zleceń

Nieprzeczytany post autor: panprezes »

Witam serdecznie,

Odnoszę nieodparte wrażenie, że gdy szukasz czegoś podstawowego i prostego do bieżącej pracy, to jest to najtrudniejsze. Niestety nie znam się na programowaniu, więc może w tym tkwi szkopuł...

Od bardzo długiego czasu szukam skryptów obsługujących otwieranie i modyfikację zleceń. Jest tego trochę w sieci, jednak nic - jak dotąd - nie działa mi tak, jak powinno!

Przerobiłem na swoje potrzeby co po niektóre skrypty, ale raz to działa, raz nie działa - mam na myśli real, bo w demo śmiga jak ta lala. Często skrypt zdąży otworzyć tylko 1 pozycję, a ja muszę potem nawalać z palca po bieżącej (uciekającej) cenie...

Mili forumowicze, pomóżcie mi, co mam wpisać w kodzie, aby mieć 100% pewność, że to czego chcę działało. A może korzystacie z takich narzędzi i moglibyście je wrzucić.

Potrzebuję 2, 3 lub 4 skrypty (czasami lepiej i szybciej jest, gdy nie trzeba się bawić kombajnem, który jednocześnie otwiera i modyfikuje zlecenia):

1. Open BUY - jednocześnie 3 i więcej pozycji, w tej samej chwili, ale niekoniecznie w tej samej cenie, z różnymi TP
2. Open SELL - jak wyżej
3. Modyfikacja SL i TP - jednoczesna dla wszystkich pozycji (ewent. wybranych - w zależności od tego, czy skrypty Open BUY/SELL będą otwierać pozycje w tej samej cenie)
4. Open BUY/SELL - jednoczesne otwarcie 3 i więcej pozycji przeciwnych


Jeśli jest nierealne, aby kilka zleceń zostało złożonych w tym samym czasie i w tej samej cenie, to problemem jest napisanie w kodzie czegoś, co pozwoli ponowić próby, ale tylko dla tych pozycji które nie zostały przez skrypt otwarte... No tego nie potrafię, ale może wcale nie jest to potrzebne?

Dzięki i pozdrawiam

Awatar użytkownika
Tig3r
Przyjaciel Forum
Przyjaciel Forum
Posty: 2310
Rejestracja: 02 sty 2008, 10:46

Nieprzeczytany post autor: Tig3r »

panprezes pisze:Jeśli jest nierealne, aby kilka zleceń zostało złożonych w tym samym czasie i w tej samej cenie, to problemem jest napisanie w kodzie czegoś, co pozwoli ponowić próby
Zapewne właśnie problem wynika z tego. Realizacja zlecenia przez brokera trwa i w tym czasie może być błąd otwarcia w postaci np REQUOTE, czy błąd CONTENT BUSSY.
I co potem - cena się zmieniła a skrypt ma do otwarcia jeszcze np 2 pozycje? Ma je otworzyć po nowej cenie? Bo po starej z wiadomych względów nie da się.
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..

panprezes
Bywalec
Bywalec
Posty: 18
Rejestracja: 26 lut 2010, 12:54

Nieprzeczytany post autor: panprezes »

Witam Tig3r,

Używam obecnie przerobionego np. Jim_Buyera / Sellera. Slippage, bo wydawaje się szybki i prosty - i jakbym go nie ustawił, to i tak otworzy najwyżej 2 pozycje.
Na realizację pierwszej czekam około 2 sekundy, jeśli zdarzy się, że otworzy drugą, to znów jest to po kolejnych sekundach... Slippage ustawiałem w dużym zakresie, kombinowałem też, by dla każdej pozycji był inny, i zero poprawy.
Nawet gdy nie ma ruchu cenowego (lub jest on minimalny, a na pewno nie większy niż ustawiony slippage), to nie otwiera wszystkich pozycji! Ma to miejsce tylko w REAL.

Jak dotąd na setki razy zdarzyło się chyba raz, że skrypt otworzył drugą pozycję w innej cenie, niż pierwszą. To akurat dobrze. Ale pogodziłbym się, gdyby otwierał w innej, tylko żeby je otwierał!

Piszesz o błędach - uruchamiam skrypt do oporu, bo zdarza się oczywiście requotowanie. Tylko, że on naturalnie wówczas uruchamia cały swój proces, czyli próbuje otworzyć wszystkie zapodane zlecenia.

Dodano po 7 minutach:

No widzę, że chyba problem tkwi w tym, że skrypt chce koniecznie otworzyć wszystkie zlecenia w tej samej cenie... Jak zrobić, by otwierał po bieżącej???

Dodano po 5 minutach:

Po bieżącej cenie - oczywiście w jakimś określonym zakresie slippage ustawionym dla wszystkich tych zleceń, albo dla każdego z osobna

Awatar użytkownika
Tig3r
Przyjaciel Forum
Przyjaciel Forum
Posty: 2310
Rejestracja: 02 sty 2008, 10:46

Nieprzeczytany post autor: Tig3r »

Nie wiem czy programujesz, ale zamiast zwykłego OrderSend..
możesz użyć tego:

Kod: Zaznacz cały

int powtorzen;


powtorzen=20;
while(powtorzen>0)
{
int ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,0,Bid-stop_loss*Point,ttp1,comment + " tp1",magic+0);
if(ticket>0) powtorzen=-1;
powtorzen--;
Sleep(500);
RefershRates(); // to zostawiasz jak chcesz wejść po nowej cenie
} 
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..

panprezes
Bywalec
Bywalec
Posty: 18
Rejestracja: 26 lut 2010, 12:54

Nieprzeczytany post autor: panprezes »

No widzisz cholera, nie programuję. Robię wszystko na czuja, przyglądając się konstrukcji w różnych kodach.
Wyskakuje mi błąd związany z :
RefershRates();

Coś trzeba jeszcze pewnie dopisać??

Awatar użytkownika
Tig3r
Przyjaciel Forum
Przyjaciel Forum
Posty: 2310
Rejestracja: 02 sty 2008, 10:46

Nieprzeczytany post autor: Tig3r »

Bez kodu skryptów nikt Ci nie pomoże.
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..

panprezes
Bywalec
Bywalec
Posty: 18
Rejestracja: 26 lut 2010, 12:54

Nieprzeczytany post autor: panprezes »

OK.
wrzucam to swoje dzieło :)

Dodano po 4 godzinach 12 minutach:

No co? Nie o to chodziło?
Tig3r daj znaka, please
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

bull
Bywalec
Bywalec
Posty: 6
Rejestracja: 06 maja 2010, 17:12

Nieprzeczytany post autor: bull »

Zdaje sie, że mam coś co potrzebujesz panprezes, skrypt otwiera 4 pozycje w sumie ze SL na 25pip, oraz tergetami, odpowiedni 14, 28,42, ostatnia pozycja jest bez targeta, zostawiona na ''swinga'' , skrypt jest głównie ustawiony pod scalping dlatego tez takie T. Oczywiscie pozycje, SL i T można zmienic wedlug własnego uznania, także jak bedziesz chciał inne parametry i nie dasz rady sam to daj znac na priv to jak bede miał chwile to ci to przerobie tak jak potrebujesz
pozdro
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

panprezes
Bywalec
Bywalec
Posty: 18
Rejestracja: 26 lut 2010, 12:54

Nieprzeczytany post autor: panprezes »

Dzięki bull,
przetestuję jutro z rana. Te "sleepy" w kodzie chyba rozwiążą problem (czyli chyba o to chodziło). Pozostałe parametry pozmieniam sam. Dzięki !!!

A macie może jeszcze skrypt do jednoczesnej zmiany SL dla wszystkich otwartych pozycji??

Pzdr,

Dodano po 10 godzinach 33 minutach:

Witam,
Te skrypt niestety nie działa w sposób niezawodny, podobnie jak ten mój...
Otwiera wszystkie pozycje w tej samej cenie i zauważyłem, że nawet przy dużym slippage w wielu przypadkach nie otwiera wszystkich pozycji - również gdy cena zmienia się w jego zakresie. To zdecydowanie dziwne!

No, coś jest zdecydowanie na rzeczy, ponieważ ustawiłem slippage na 100 pips (dla 0,00001) i skrypt nie radzi sobie nawet przy zmianie cen o 5 pips!!


Czy ktoś mógłby w to zerknąć i zmienić kod, by skrypt otwierał poszczególne pozycje ze slippage przypisanym dla danej pozycji niezależnie i w bieżącej cenie?
Może to by pomogło...
UPRZEJMIE PROSZĘ...


PS. Dla niektórych brokerów trzeba zmienić ceny Ask i Bid w kodzie

inso
Stały bywalec
Stały bywalec
Posty: 37
Rejestracja: 07 maja 2010, 11:16

Nieprzeczytany post autor: inso »

witam,

probuje uruchomic te skrypty od bulla ale wyskakuje komunikat "invalid stops"

Ktos cos poradzi?

ODPOWIEDZ