Sari la conținut
Postat

Va rog frumos, am nevoie de putin ajutor. Am nevoie de aceasta secventa de cod in crearea unui EA si cel cu care discut nu intelege ce vreau de fapt. 

 

Vreau un cod care sa respecte urmatoarea regula : urmareste bara in desfasurare. Dupa ce bara actuala inchide, plaseaza pending astfel :

 

1) Daca bara inchide rosu, plaseaza pending buy cu 1% risc din balanta actuala cu intrare la 2 pip deasupra maximei barei. SL va fi ajustat raportand riscul la balanta actual

2) Daca bara inchide verde, plaseaza pending sell cu 1% risc din balanta actuala cu intrare la 2 pip sub minima barei.SL va fi ajustat raportand riscul la balanta actual

 

3) Daca urmatoarea bara nu activeaza pendingul si apuca sa inchida, ordinul este anulat.

 

 

 

Ultra multumesc :).

Editat de Apollo

  • Răspunsuri 15
  • Citiri 7,6k
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

Featured Replies

Postat

eu nu prea iau in seama strategii la nivel de bara, pentru ca in bara aia nu stii ce se intampla. daca ai un sir de la 1 la 10 deschide bara la 1, urmeaza ticsi 9,10,10,10,10, 10 si apoi close la 1 si iar 10. daca muti bara fix o secunda, valoare in dreapta deschide la 9 si inchide la 10 si pe grafic arata cu totul altfel.

orice calcul facut pe bara aia cu open 1 close 1 maxim 10 minim 1 mi se pare total eronat. la fel o sa ai alte bari la brokeri diferiti in functie de cum deschid ei taraba. 

sper sa intelegi punctul meu de vedere si sustine teoria mt4 gambling. 

Postat
  • Autor

 E o parte de cod a unui cod mai complex. Nu are a face cu strategiile la nivel de bara.

 

Referitor la gambling, priveste ce mu..cles a dat GBP si AUD dupa ce initial promiteau sa o dea la vale. In cateva clipe s-a schimbat realitatea. Doar un MM te salva aici. 

Editat de Apollo

Postat
  • Autor

Macar daca nu are chef nimeni sa faca, spuneti daca e posibil de codat. E mai bine decat nimic.

Postat

o bara are OpenHighLowClose. sa citeasca ultima bara:

cand Close>Open ai bara verde 

cand Close<Open ai bara rosie.

 

pentru 1% din equity eu folosesc asta:

extern double MaximumRisk = 0.01

lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,2);

 

cum se pune un pending order banuiesc ca te descurci...

Editat de iulik2k1

Postat
  • Autor

Vreau doar sa stiu daca e posibil ca EA-ul sa urmareasca bara care e in curs de desfasurare , iar cand bara asta inchide, in primele secunde de inceput ale barei urmatoare sa puna un pending order. E posibil asa ceva?

Postat

da e posibil, depinde de distanta la care pui pendingul, minim 5 pipsi. 

Postat
  • Autor

Dar mai putin nu merge? 2 pip deasupra 

Postat

Dar mai putin nu merge? 2 pip deasupra 

1)Din cate stiu eu nu...dar e posibil sa gasesti un broker unde sa se poata.

 

2)Daca folosesti ea...trebuie musai sa pui pending?Nu e ok ca ea-ul sa deschida pur si simplu pozitia la pretul dorit(pretul la care tu doresti sa pui pendingul)?

Postat
  • Autor

A, stati ca acum am inteles la ce va referiti. Da , aveti dreptate. Ar fi in regula si asa, cand pretul merge 2 pips deasupra, EA-ul sa deschida ordin. 

  • 3 săptămâni mai târziu...
Postat

{

int signal, none, buy , sell;

int signal=none;

double n=2;

double m=2;

double BuyEntry=High[1]+n*Point;

double SellEntry = Low[1]-m*Point;

 

if (Close[1]>Open[1])signal=buy;

if (Close[1]<Open[1])signal=sell;

 

if (signal==buy)// OpenPendingBuy();

result = OrderSend(Symbol(),OP_BUYLIMIT,GetLots(),BuyEntry,slippage,stop_loss,take_profit,"Long",0,0,CLR_NONE);

 

if (signal==sell)//OpenPendingSell();

result=

OrderSend(Symbol(),OP_SELLSTOP,GetLots(),SellEntry,slippage,stop_loss,take_profit,"Short",0,0,CLR_NONE);

 

return(res);

 

{

int signal, none, buy , sell;

int signal=none;

double n=2;

double m=2;

double BuyEntry=High[1]+n*Point;

double SellEntry = Low[1]-m*Point;

 

if (Close[1]>Open[1])signal=buy;

if (Close[1]<Open[1])signal=sell;

 

if (signal==buy)// OpenPendingBuy();

result = OrderSend(Symbol(),OP_BUYLIMIT,GetLots(),BuyEntry,slippage,stop_loss,take_profit,"Long",0,0,CLR_NONE);

 

if (signal==sell)//OpenPendingSell();

result=

OrderSend(Symbol(),OP_SELLSTOP,GetLots(),SellEntry,slippage,stop_loss,take_profit,"Short",0,0,CLR_NONE);

 

return(res);

In mare cam asta e codul ... nu e complet , nu e bine aranjat ... si nici nu stiu daca functioneste ... dar cam asta e ideea ta (asa cum o vad eu ... ceva scris la repezeala...)

 

double Price=(Open+High+Low+Close)/4;

{

if (ORDER_TYPE==OP_BUYLIMIT)

{

if ( Price < BuyEntry-Low[1]-n*Point )

DeletePendingBuy();

}

else

{

If(ORDER_TYPE==OP_SELLLIMIT)

{

if (Price>SellEntry+High[1]+m*Point)

DeletePendingSell();

)

double Price=(Open+High+Low+Close)/4;

{

if (ORDER_TYPE==OP_BUYLIMIT)

{

if ( Price < BuyEntry-Low[1]-n*Point )

DeletePendingBuy();

}

else

{

If(ORDER_TYPE==OP_SELLLIMIT)

{

if (Price>SellEntry+High[1]+m*Point)

DeletePendingSell();

)

Cam asta ar fi conditia de delete al ordinului , dupa cum inteleg eu ...

daca lumanarea se inchide si ordinul nu e activat , ordinul (BuyStop de exemplu) se inchide in momentul in care pretul (Price) scade sub Low -ul lumanarii cu pricina....

 

 

Acuma am realizat ca am scris gresit ....

in acele coduri (sau icercare de cod ) am vrut sa scriu OP_BUYSTOP si nu BUYLIMIT

 

OP_SELLSTOP si nu SELLLIMIT ...

 

scuze

 

...

 

 

astept si eu sa vad ce corecturi aduceti textului ...

poate mai prind si eu cate ceva din zbor ....

 

 

@ Apolo... tare am senzatia ca am vazut pe undeva ... ea-ul asta ....

scris... nu mai stiu exact unde... insa imi pare cunoscut ...

Editat de Apollo

Alătură-te conversației

Poți posta acum și să te înregistrezi mai târziu. Dacă ai un cont, autentifică-te acum pentru a posta cu contul tău.

Vizitator
Răspunde la acest subiect...

Navigare recentă 0

  • Nici un utilizator înregistrat nu vede această pagină.

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.