Witam,
Mam taki problem. Obserwując pozycje otwarte przez EA często widzę, że otwarta pozycja jest zyskowna ale TP jeszcze daleko a z wykresu widać, że to już koniec ruchu i za chwilę będzie odwrót. Wtedy ręcznie zamykam pozycję i jeśli moje przypuszczenia się sprawdzają to po wyczerpaniu takiego odwrotnego ruchu
ręcznie otwieram tę sama pozycję zyskując pipsy w stosunku do EA. Chciałbym jednak aby ta nowa ręcznie otwarta pozycja została uznana przez EA za pierwotną pozycję otwartą przez EA i dalej nadzorowana już przez EA. Czy jest taka możliwość? Może ktoś wie jak to zrobić.
Pozdrowienia
Ryszard
Czy można oszukać strategię EA
najprostsze jest wyłączanie EA w momencie zamykania pozycji ręcznie i włączenia w momencie kiedy warunki są takie ze chciałbyś zająć pozycję. Wtedy EA może działać dalej na przez samego siebie zajętej pozycji. Oczywiście wtedy warunki zajęcia pozycji muszą być takie aby EA to zrobił.
Prawdopodobnie dałoby się tak napisać EA aby umieścić w nim włącznik zajmujący pozycję w momencie jego uruchomienia i który po zajęciu pozycji należałoby przełączyć ręcznie na off.(żeby natychmiast po zamknięciu pozycji nie otwierał nowej)
Prawdopodobnie dałoby się tak napisać EA aby umieścić w nim włącznik zajmujący pozycję w momencie jego uruchomienia i który po zajęciu pozycji należałoby przełączyć ręcznie na off.(żeby natychmiast po zamknięciu pozycji nie otwierał nowej)
Tak np.
Zapisać do zmiennej Tick zlecenia i za kazdym razem sprawdzac czy zlecenie jest nadal aktywne. Jesli nie to do zmiennej wprowadzic 0.
Tak w pseudo kodzie.
Kiedy zlecenie zamkniemy ręcznie to EA odczyta je jako zamkniete i do zmiennej tick wprowadzi 0.
Jeśli zmienna tick jest równa 0 to EA otwiera nową pozycje i znowu do zmiennej tick wpisuje wartość Ticka nowego zlecenia.
Zapisać do zmiennej Tick zlecenia i za kazdym razem sprawdzac czy zlecenie jest nadal aktywne. Jesli nie to do zmiennej wprowadzic 0.
Tak w pseudo kodzie.
Kod: Zaznacz cały
int tick=0;// zmienna przechowujaca wartość Ticka zlecenia
OrderSelect(tick,select_by_tick);
if (OrderCloseTime()>0)tick=0;
if (tick==0)
{
//Dalsza procedura odpowiedzialna za otwieranie nowego zlecenia
tick=OrderSend(....);
}
Jeśli zmienna tick jest równa 0 to EA otwiera nową pozycje i znowu do zmiennej tick wpisuje wartość Ticka nowego zlecenia.
Dużo zależy od tego jak jest napisane EA. Być może wystarczy otworzyć nową pozycję z takim samym Magic Number (skryptem)?Ryszard pisze:Chciałbym jednak aby ta nowa ręcznie otwarta pozycja została uznana przez EA za pierwotną pozycję otwartą przez EA i dalej nadzorowana już przez EA. Czy jest taka możliwość? Może ktoś wie jak to zrobić.
Z mojego doświadczenia wynika, że taka ocena bywa bardzo złudna. Prowadzisz dokładne rozliczenie czy przypadkiem EA zostawione samo sobie w długim terminie nie wyszło by lepiej?Ryszard pisze:Wtedy ręcznie zamykam pozycję i jeśli moje przypuszczenia się sprawdzają to po wyczerpaniu takiego odwrotnego ruchu ręcznie otwieram tę sama pozycję zyskując pipsy w stosunku do EA.
Czy można oszukać EA
Witam,
Dziękuje wszystkim za zainteresowanie i propozycje. Napisałem skrypt,
który załatwia sprawę. Aby EA uznała moją nową pozycję za własną muszę
zresetować EA. Napisałem skrypt to za dużo powiedziane. Skorzystałem z gotowca wprowadzając potrzebne zmiany.
Dziękuję za pomoc.
Pozdrowienia
Ryszard
Dziękuje wszystkim za zainteresowanie i propozycje. Napisałem skrypt,
który załatwia sprawę. Aby EA uznała moją nową pozycję za własną muszę
zresetować EA. Napisałem skrypt to za dużo powiedziane. Skorzystałem z gotowca wprowadzając potrzebne zmiany.
Dziękuję za pomoc.
Pozdrowienia
Ryszard