Sari la conținut

TUNEL EA - am nevoie de ajutor!


Postări Recomandate

Salut Criodi! :smile:

Ai mai facut ceva cu inchiderea ordinelor?

Editat de luke65
Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Recunosc ca am abandonat programul dupa ultimul update.

 

Singurul lucru de care ar mai avea nevoie in mod special, ar fi acea functie de stergere a acelui ordin pending ramas in plus dupa ce TP/SL -urile sunt atinse. Teoretic e doar o functie amarata in mql, insa la ultima mea incercare pur si simplu refuza sa isi faca treaba(nu am studiat mai departe problema). In afara de asta programul respecta indeaproape sistemul si isi face treaba respectabil zic eu.

 

Nu inteleg la ce te referi cand zici "ar mai fi inchiderea simultana a tuturor ordinelor, pentru securizarea profitului la n$(sau pips)". Pai nu asta facem cand stabilim TP si SL ? De ce ar mai avea nevoie de inca o functie care sa le inchida separat ? Sau te referi la o functie care sa se asigure ca ordinele au fost intradevar inchise simultan la nivelul TP/SL ? Nu inteleg exact ce crezi tu ca ar mai trebui adaugat in privinta asta.

 

In rest, ar mai fi acele metode specifice de intrare. Daca ai cateva idei clare, posteaza-le aici si o sa ma uit peste ele. Nu prea mai am timp, iar stratgia nu ma intereseaza in mod deosebit, dar promit sa implementez cate ceva cand am timp.

Link spre comentariu
Distribuie pe alte site-uri

Recunosc ca am abandonat programul dupa ultimul update.

 

Singurul lucru de care ar mai avea nevoie in mod special, ar fi acea functie de stergere a acelui ordin pending ramas in plus dupa ce TP/SL -urile sunt atinse. Teoretic e doar o functie amarata in mql, insa la ultima mea incercare pur si simplu refuza sa isi faca treaba(nu am studiat mai departe problema). In afara de asta programul respecta indeaproape sistemul si isi face treaba respectabil zic eu.

 

Nu inteleg la ce te referi cand zici "ar mai fi inchiderea simultana a tuturor ordinelor, pentru securizarea profitului la n$(sau pips)". Pai nu asta facem cand stabilim TP si SL ? De ce ar mai avea nevoie de inca o functie care sa le inchida separat ? Sau te referi la o functie care sa se asigure ca ordinele au fost intradevar inchise simultan la nivelul TP/SL ? Nu inteleg exact ce crezi tu ca ar mai trebui adaugat in privinta asta.

 

In rest, ar mai fi acele metode specifice de intrare. Daca ai cateva idei clare, posteaza-le aici si o sa ma uit peste ele. Nu prea mai am timp, iar stratgia nu ma intereseaza in mod deosebit, dar promit sa implementez cate ceva cand am timp.

 

Mi-am dat seama ca nu ai avut timp sau ca nu te intereseaza in mod deosebit strategia, dar eu vreau sa o duc pana la capat. Sunt multumit si pentru cat m-ai ajutat pana acu. :smile:

Dupa rezolvarea problemei cu ultimul ordin, eu am gandit sa implementam o masura de securizare a profitului, astfel ca atunci cand profitul ajunge la "n"pips, sa se inchida toate ordinele simultan, pana a ajunge la TP si SL, astfel luam profitul de "n" pips. Daca "n" > TP, atunci aceasta regula se aplica de la ordinul 3 in sus (dupa cum stii primele 2 ordine se inchid la + TP, iar de la al 3-lea, exponential, mai mult decat TP).

Daca vrei sa ma mai ajuti, te rog sa introduci o ciclare pentru a selecta una din metodele de intrare:

1. la ora "h" pentru "direction=1"-buy ;"direction=2"-sell

2. la ora "h" daca ultima candela a fost plina -sell sau daca ultima candela a fost goala-buy

3. intrare dupa indicatorul--BreakOut_PANCA_EAGLE__indicator--

4. intrare dupa ce consideri tu personal ca ar fi bina ca metoda(indicator, sistem de mai multi indicatori, etc.)

 

Poti sa te inspiri de la -- Terminator_v2.0 -30min-1h time2 liv7 -- postat mai sus de mine.

Editat de luke65
Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Ok, am sa acopar cateva din criteriile tale, insa am nevoie de cateva clarificari la punctele 2 si 3:

 

"2. la ora "h" daca ultima candela a fost plina -sell sau daca ultima candela a fost goala-buy"

 

Ce insemana la tine bara plina ? Bara in care pretul a crescut ? sau in care a scazut ?

Si ce facem daca pretul a terminat in bara de indecizie, in care OPEN=CLOSE ?

 

"3. intrare dupa indicatorul--BreakOut_PANCA_EAGLE__indicator--"

 

Cum intram ? La breakout in sus luam BUY si la breakout in JOS luam sell ? Facem acel price box canal pentru tunelul nostru ?

 

Am implementat deja punctul 1 si 2, insa la doi am nevoie de acele clarificari din partea ta, plus ca s-ar putea sa mai fine nevoie de o bucata de cod pentru verificarea unei erori. Nu sunt inca sigur de acest aspect, am nevoie sa il testez pe real saptamana viitoare.

 

La 3 s-ar putea sa am probleme cu acest indicator intrucat el nu contine nici un buffer. Astfel nu am cum sa chem date din indicator in expert in mod direct. Solutii ar fii, insa nu am mai intalnit problema pana acum si din cauza asta s-ar putea sa dureze ceva mai mult pana rezolv.

 

Mai ramane de adaugat si functia OrderDelete() pentru acel ultim order pending, insa am nevoie sa ii testez functionalitatea in timp real. Defapt functia este deja inclusa in program, insa din motive abstracte nu functioneza :D

 

La 4 nu cred ca am sa vin prea curad cu o idee stralucita. La asta ma refream cand am spus ca nu ma intereseaza metoda in mod deosebit; Nu am de gand sa o tranzactionez pe viitor. Poate mi se aprinde vreun beculet intr-o zi cand am sa imi dau seama de utilitatea acestei metode intr-un anumit caz, insa pana atunci nu promit nimic :smile:

 

Legat de acea securizare a profitului, iarta-mi gandirea mea liniara, insa tot nu inteleg unde intra acel nivel de +n pips :) Practic in functie de acel multiplier=2 sau =3 stabilim limitele extreme ale canalului(TP/SL) Astfel avem patru nivele. Doua in interior care functioneaza ca nivele de intrare fie BUY fie SELL si inca doua in exterior fiecare functionand ca TP si SL in acelasi timp. In functie de multiplier stabilim daca TP va fi la o lungime de canal de punctul initial de intrare sau la doua lungimi.(SL-ul va fii automat la doua lungimi + canalul sau la o lungime + canalul, deci mai mare cu o lungime de canal fata de TP) Nu vad unde intra in ecuatie acel "n pipsi". Acel n pips este deja stabilit deja prin nivelele TP/SL. O inchidere inainte de TP s-ar putea sa reduca profitul vertiginos per total sau chiar sa inchida pe minus. Si de ce mai stabilim pana la urma TP/SL daca mai adaugam si acest nivel "n pips" ?!

In afara de asta nu inteleg la ce te referi cand zici ca de la ordinul 3 in sus ordinul se inchide la nivel exponential mai mare decat TP-ul. Deci ce ? Lucram cumva la strategii diferite ? Poate postezi si tu o poza ca sa inteleg si eu pana la urma cu ce am de a face.

 

Am sa postez in cursul saptamanii noul program incluzand acele modificari de care am vorbit mai sus. Vreau sa le testez mai intai functionalitatea pe real inainte de a le posta aici.

Link spre comentariu
Distribuie pe alte site-uri

Legat de acea securizare a profitului, iarta-mi gandirea mea liniara, insa tot nu inteleg unde intra acel nivel de +n pips :) Practic in functie de acel multiplier=2 sau =3 stabilim limitele extreme ale canalului(TP/SL) Astfel avem patru nivele. Doua in interior care functioneaza ca nivele de intrare fie BUY fie SELL si inca doua in exterior fiecare functionand ca TP si SL in acelasi timp. In functie de multiplier stabilim daca TP va fi la o lungime de canal de punctul initial de intrare sau la doua lungimi.(SL-ul va fii automat la doua lungimi + canalul sau la o lungime + canalul, deci mai mare cu o lungime de canal fata de TP) Nu vad unde intra in ecuatie acel "n pipsi". Acel n pips este deja stabilit deja prin nivelele TP/SL. O inchidere inainte de TP s-ar putea sa reduca profitul vertiginos per total sau chiar sa inchida pe minus. Si de ce mai stabilim pana la urma TP/SL daca mai adaugam si acest nivel "n pips" ?!

In afara de asta nu inteleg la ce te referi cand zici ca de la ordinul 3 in sus ordinul se inchide la nivel exponential mai mare decat TP-ul. Deci ce ? Lucram cumva la strategii diferite ? Poate postezi si tu o poza ca sa inteleg si eu pana la urma cu ce am de a face.

 

Am sa postez in cursul saptamanii noul program incluzand acele modificari de care am vorbit mai sus. Vreau sa le testez mai intai functionalitatea pe real inainte de a le posta aici.

 

Scuze pentru greseala mea!!! :D

Nu vorbim de strategii diferite.

Initial cand m-am gandit la securizarea profitului am vrut ca pozitiile sa se inchida inainte de TP si SL, cand profitul in $ sa fie pe + (de ex. 30$ la lot de 0,1, iar asta se poate intampla dupa ordinul al 3-lea pana in TP,SL)

Daca tu ai posibilitatea sa faci programul sa inchida toate ordinele cand profitul ajunge la un castig de "n"$ atunci e mai simplu.

Cu "n"pips am gresit eu!!!!!pentru ca depinde de marimea lotului, una e la microlot si alta e la minilot sau lot(0,001 lot, 0,1 lot sau 1 lot, etc...)

Acum nu e asta urgenta, poate sa mai astepte.....era doar o idee!!! :smile:

Cu inchiderea ultimului ordin e prioritatea ca sa putem face probe.

Pentru 2. cand am zis goala m-am gandit ca se inchide buy, iar plina sell, eu nu lucrez pe platfotma MT4 cu alte template-uri decat cele default.

In cazul in care OPEN=CLOSE, putem merge random?

Editat de luke65
Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Am terminat ultima versiune a expertului.

Ca si metode noi de intrare am adaugat urmatoarele

 

extern int OpenOrdersBasedOn=0;

-deschiderea clasica la pretul curent

 

extern int OpenOrdersBasedOn=1;

-deschiderea la o anumita ora in viitor in directia prestabilita

 

extern int OpenOrdersBasedOn=2;

-deschiderea la o anumita ora in viitor in directia ultimei candele sau in directia prestabilita de catre user in cazul unei candele in care OPEN=CLOSE

 

De asemenea am rezolvat si problema deletarii acelui ultim order pending.

 

Variabila care stabileste ora de intrare arata in felul urmator:

 

extern datetime date=D'2010.03.11 12:30:00';

 

Pentru a stabili momentul intrarii in viitor trebuie modifcata in primul rand ora si mai apoi daca e cazul minutul. De asemnea poate fi modificata si data zilei de azi cu o alta din viitor daca se doreste o intrare in trade intr-o alta zi decat cea curenta. EA-ul face intrari chiar si la nivel de secunda in ideea ca se poate intra chiar si la ora 12:34:21, insa va fi un decalaj de 7 secunde, timp in care se permite formarea unei noi candele. Acest lucru este valabil strict in cazul OpenOrdersBasedOn=2; intrucat avem nevoie de formarea unei noi candele pentru ca indicatorul sa calculeze directia de intrare in functie de ultima candela. In cazul OpenOrdersBasedOn=1; intrarea se face instantaneu la ora stabilita in functie de directia definita de user.

 

Deocamdata EA-ul nu este optim pentru back testing intrucat apar diverse complicatii care in real-time ar fi rezlovate pur si simplu de o reincarcare a programului de catre user cu noile variabile, dar care pe istoric au nevoie de atentie speciala din partea robotului.

Sunt tare curios care ar fi rezultatele robotului pe istoric si am sa programez cat de curand si o varianta optima pentru back-testing.

 

Momentan nu am testat robotul mai departe de un ordin, iar in ceea ce priveste ordinele deschise la o anumita ora nu l-am testat decat pe graficul de 1 min. Se comporta bine insa si nu cred ca vor aparea alte probleme pe viitor.

 

@luke

Te rog sa postezi aici eventualele probleme ce vor aparea pe parcurs ce il testezi. Dupa cum ziceam nu sunt interesat sa urmaresc strategia in timp real si nu am testat programul foarte intens. De aceea ar putea aparea probleme pe parcurs. Te rog sa postezi aici daca EA-ul functioneaza brici sau daca scartaie :smile: si am sa incerc sa-i indrept eventualele neajunsuri.

FxTunel4.mq4

Link spre comentariu
Distribuie pe alte site-uri

Multumesc mult!!! :smile:

Am sa-l testez bine si daca apar mai multe probleme, le postez aici.

Ai facut o treaba buna pana acu, nu ma indoiesc ca si retusurile vor fi pe masura! :)

Link spre comentariu
Distribuie pe alte site-uri

  • 2 luni mai târziu...

Salut CRIODI! :D

Am probat si am mai modificat pe ici pe colo codul tau atat cat m-am priceput eu :D , si am mers pe 3 metode de intrare, insa au aparut 2 probleme de care nu scap :D

1. o eroare de lucru ,probabil de la o ciclare: daca selectez prima metoda pune 3 ordine de inceput si un singur pending order, daca selectez a doua pune 2 ordine de intrare si un pending order, iar daca selectez a treia lucreaza corect cu un ordin, dar asta nu ar fi o problema majora, ca se poate face cate un EA pentru fiecare metoda in parte

2. PROBLEMA MARE e urmatoarea: dupa ce isi face treaba si inchide ultimul pending order, nu mai lucreaza (intra o singura data in tranzactie si gata)

Poate ma poti ajuta tu sa-l faci sa functioneze corect.

FxTunel bun 1.1.mq4

Link spre comentariu
Distribuie pe alte site-uri

  • Moderators

Pentru cei care urmaresc aceasta metoda, varianta postata de luke si corectata acum de mine foloseste noile conditii:

 

extern int OpenOrdersBasedOn=1;

-deschiderea la o anumita ora in viitor in directia ultimei candele sau in directia prestabilita de catre user in cazul unei candele in care OPEN=CLOSE

 

extern int OpenOrdersBasedOn=2;

-deschiderea la pretul curent in directia macd-ului

 

extern int OpenOrdersBasedOn=3;

-deschidere in functie de indicatorul "support and resistance" Nu stiu care e treaba cu indicatorul acesta, nu il am, dar intrarile se fac buy daca indicatorul indica suport si sell daca indicatorul indica rezistenta.

 

De asemenea, variabila "date", prezenta in FxTunel4 sa schimbat in "Starthour". Aceasta din urma se prezinta acum sub forma:

StartHour = 703; (in exemplul acesta 703 este egal cu ora 7 si 3 minute)

-prima cifra reprezinta ora, iar urmatoarele doua reprezinta minutele.(exemple: 1234 = 12:34, 1947 = 19:47, 618 = 6:18)

 

Aveti astfel de ales intre varianta initiala FxTunel4 postata mai sus care functioneaza dupa conditiile descrise in postul meu si aceasta noua varianta care contine cateva conditii noi. Nu am idee care e mai profitabila intrucat nu folosesc expertul sau strategia.

 

PS: Daca acum vedeti pentru prima data topicul sau ultimele variante postate ale expertului, va recomand sa cititi topicul de la inceput pentru a intelege toate variabilele.

 

@luke

1. Nu stiu cum de ai reusit sa scrii acele particele de cod pe care le-ai adaugat caci cand a fost vorba de niste acolade nu ai fost in stare sa le inchizi cum trebuie. Alte modificari in afara de acele conditii pentru directie nu am mai vazut deci totul ar trebui sa fie ok acum. Nu iti mai explic exact unde a fost greseala, dar poti sa compari cele doua coduri si ai sa intelegi unde era problema.

 

2. Pai nu inteleg... Incarci expertul, isi face treaba, inchide toate oridnele si intra in stand-by. Vrei alte ordine ? Ii dai noul set de conditii si il pui iar la treaba. Nu se reincarca singur. Poate utilizatorul nu vrea sa il foloseasca dupa aceleasi conditii odata ce primul set a fost executat. E mult mai ok ca reincarcarea sa se faca manual dupa parerea mea.

FxTunel 1.1.mq4

Editat de Criodi
Link spre comentariu
Distribuie pe alte site-uri

@Criodi!

Nu sunt programator, de aceia am apelat la tine, sau la cei care se pricep. Codurile nu imi apartin, nici nu am pretins asa ceva, eu numai le-am adaptat pentru ca imi place sa experimentez idei.

Iti multumesc ca m-ai ajutat si pentru explicatiile care le-ai postat, eu voiam sa le dezvolt dupa ce remediam disfunctiile.

Vreau sa il testez sa mearga automat, sa vad cand clacheaza, cand merge mai bine, poate gasesc un tipar care sa ma ajute pe mine, de aceea te mai rog sa mai "umbli" putin la cod sa faci EA-ul sa mearga non-stop si in timp real si pe backtesting. Ce zici? :D

Aici e indicatorul Support and Resistance.

Support and Resistance.mq4

Link spre comentariu
Distribuie pe alte site-uri

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...

×   Alipit ca text avansat.   Alipește ca text simplu

  Doar 75 emoji sunt permise.

×   Linkul tău a fost încorporat automat.   Afișează ca link în schimb

×   Conținutul tău precedent a fost resetat.   Curăță editor

×   Nu poți lipi imagini direct. Încarcă sau inserează imagini din URL.

  • Navigare recentă   0 membri

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

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.