Ekspertų patarėjas, kuris atidaro užsakymus kas valandą, tinkamu laiku ir reikiamu momentu. Pirkimo limitas ir atsisėdimo limitas tinkamu laiku Scenarijaus įdiegimas diagramoje

Šis ekspertų patarėjas idealiai tinka tiems, kurie prekiauja pagal lygius ir bet kokias strategijas, naudojant laukiančius limitinius pavedimus. EA pateiks užsakymus tinkamu laiku tinkamu atstumu nuo dabartinės kainos! Roboto nustatymuose galite nustatyti nuostolių sustabdymą, pelno orderius, taip pat kiekvieno pavedimo lotą. Viskas nustatoma kiekvienam užsakymui atskirai. Galite pateikti tik pirkimo limitą, pardavimo limitą arba abu pavedimus kartu!

„Expert Advisor“ yra pasirengęs dirbti su bet kokiais prekybos instrumentais, bet kuriame prekybos terminale Metatrader 4. Robotas taip pat pasirengęs dirbti su keliomis valiutų poromis vienu metu. Tai reiškia, kad galite atidaryti bet kokį skaičių porų ir įdiegti jose patarėją, kiekvienam suteikdami savo magišką skaičių ir laiko nustatymus. Po to kiekviena pora dirbs griežtai atskirai. Jei vis dar dirbate su limitiniais užsakymais rankiniu būdu, šis robotas kaip tik jums!

  • BUY_limit- Ar pateikti ribinį pirkimo užsakymą.
  • Lot_buy_limit- Pirkite riboto užsakymo partiją.
  • R_buy_limit- Atstumas nuo dabartinės kainos iki pirkimo limito pavedimo taškais.
  • Stop_Loss_buy_limit- Stop loss limito pirkimo pavedimai.
  • Take_Profit_buy_limit- Gaukite pelną iš pirkimo limito pavedimų.
  • SELL_limit- Ar pateikti ribinį pardavimo pavedimą.
  • Lot_sell_limit- Parduoti limito užsakymo partiją.
  • R_sell_limit- Atstumas nuo dabartinės kainos iki pardavimo limito pavedimo taškais.
  • Stop_Loss_sell_limit- Stop loss pardavimo limito pavedimai.
  • Take_Profit_sell_limit- Gaukite pelną iš pardavimo limito pavedimų.
  • Paslydimas- Maksimalus slydimas taškais.
  • Uždaryti_Užsakymus- Antrojo užsakymo uždarymas atidarant pirmąjį.
  • Laikai- Užsakymo galiojimo laikas minutėmis.
  • Laikas_Pradėti- Užsakymus pateikti laiku?
  • Laikas_valanda- Užsakymų atidarymo valanda 0-23
  • Laikas_Minutė- Užsakymų atidarymo minutė yra 0 - 59. Pavyzdžiui, valanda = 5, minutė 40, taigi 5.40 bus pateikiami užsakymai nuo to momento kainos.
  • Ekspertas_I- stebuklingas skaičius jūsų pavedimams ir kelių valiutų prekybai apibrėžti.

Šiandien kalbėsime apie robotą Trade Scheduler, kuris atlieka labai įdomią funkciją. Naudodami automatizuotas sistemas Forex prekyboje, ar pastebėjote, kad tam tikromis savaitės dienomis ar valandomis jos dažniau atneša nuostolių? Pavyzdžiui, pirmąją savaitės dieną EA atidaro labai mažai sandorių, o dauguma jų taip pat yra nuostolingi. Tokiais atvejais tikslinga išjungti patarėją prieš šeštadienį ir įjungti antradienį. Šią paprastą operaciją galite atlikti rankiniu būdu, bet taip pat galite lengvai pamiršti tinkamu metu išjungti arba įjungti patarėją.

Šios problemos (ir kelių kitų) sprendimas gali būti roboto naudojimas Trade Scheduler, kuri pati neprekiauja, o leidžia apriboti kitų konsultantų darbo valandas pagal grafiką, remiantis šių konsultantų darbo analize.

Prieš koreguodami laikinąjį darbo režimą, turite išsiaiškinti, kokiais momentais jis dažnai prekiauja minusais. Tokiu atveju pagelbės MyFXbook paslauga, kuri pateikia išsamią sistemos prekybos statistiką pagal savaitės dienas ir valandas. Optimalus prekybos laikotarpis sistemos darbui analizuoti – 3 mėnesiai. Norėdami tai atlikti, turite pradėti stebėti paslaugą. Apie roboto įdiegimą galite perskaityti „MyFXbook“. Kaip pavyzdį panagrinėkime eksperto patarėjo darbo rezultatus, kurių stebėjimą galite rasti paspaudę paveikslėlį:

Ryžiai. 1. Stebėti Transient Zones 2.0 patarėjo darbą MyFXbook tarnyboje.

Pasirinkimas tiems, kurie dar neturi pakankamos roboto prekybos istorijos analizei realioje sąskaitoje, bet tuo pačiu gali būti išbandytas – tuomet drąsiai įkelkite gautą ataskaitą iš.

Atsisiuntę ir apdoroję stebėjimą, turite eiti į išplėstinės statistikos skyrių, skirtuką Kasdien. Čia galite rasti informaciją apie santykinę sumą pagal savaitės dienas. Mūsų pavyzdyje didžiausias skaičius nuostolingi sandoriai krenta ketvirtadienį ir penktadienį, o tai reiškia, kad šiomis dienomis būtų pagrįsta stabdyti eksperto patarėjo darbą. Tokio elgesio priežastis gali slypėti rinkos būklėje, kuri šiais laikais netinka roboto strategijai, o jo skaičiavimai nėra tokie tikslūs:


Ryžiai. 2. Pereinamųjų zonų pelningų ir nepelningų sandorių santykis 2.0 Expert Advisor per savaitę.

Analizuodami pagal dieną, galite analizuoti efektyvų darbą pagal valandas. Norėdami tai padaryti, eikite į skirtuką Pagal valandas ir pažiūrėkite, kada santykinis nuostolingų sandorių skaičius yra didesnis:


Ryžiai. 3. Santykinis nuostolingų ir pelningų sandorių skaičius per valandą.

Išvada: būtų tikslinga sustabdyti prekybos procesą ketvirtadienį, penktadienį ir likusiomis dienomis, blokuoti jo darbą pirmosiomis naujos dienos valandomis, o dienos metu tomis valandomis, kai vyrauja nuostolingi sandoriai – ypač 12, 13, 14 valandų per parą... Tai yra, palikite jį dirbti naktį nuo 2 iki 8 ryto imtinai ir nuo 13 iki 21 po pietų. Patarėjo darbo rezultatas turėtų gerokai pagerėti.

Specialisto diegimas ir konfigūravimas.

„Trade Scheduler“ pagalbinio patarėjo įdiegimas atliekamas pagal analogiją su bet kuriuo kitu patarėju, daugiau informacijos žr. Naudodami toliau pateiktą nuorodą galite atsisiųsti archyvą su ekspertu:

parsisiųsti trade-scheduler.rar (Atsisiuntimai: 147)

Išpakuokite trade-scheduler.rar archyvą, nukopijuokite TradeScheduler v2.3.ex4 EA failą į aplanką data_directory \ MQL4 \ Experts \. Norėdami atidaryti duomenų katalogą, meniu Failas pasirinkite elementą Atidaryti duomenų katalogą. Tada terminalas paleidžiamas iš naujo ir po to patarėją galima rasti lange Navigator - Advisors.

Diagramoje įdiegus ekspertų patarėją, nustatymų lange nurodomas reikalingas darbo laikas pagal savaitės dienas ir valandas. Laikas nustatomas priklausomai nuo terminalo laiko, tai yra ir laikas. Kiekvienai dienai yra 3 įvesties parametrai. Pirmasis parametras yra atsakingas už roboto įjungimą / išjungimą tam tikrą savaitės dieną, antrasis parametras yra prekybos pradžios laikas, trečiasis yra sustabdymo laikas. Laikas nurodomas formatu valandos: minutės:


Ryžiai. 4. Atlikus patarėjo darbo analizę nustatyti įvesties parametrai.

Taip pat nustatymuose yra papildomas CloseBeforeSwitchOFF parametras. Jei reikšmė yra CloseAll, visi sandoriai bus automatiškai uždaryti prieš atjungiant robotą. Jei CloseAllProfitable - bus uždaromi tik pelningi pavedimai, jei Ne - sandoriai nebus uždaromi. Slydimo parametras yra atsakingas už didžiausią leistiną slydimą.

Įsitikinkite, kad terminale leidžiama automatinė prekyba ir funkcijų importavimas iš DLL. Vienam terminalui įdiegta viena patarėjo versija.

Išvada.

Norėti pagerinti našumą tavo patarėjas? Išbandykite metodą, kaip apriboti jo veikimą, ir analizuokite rezultatus. Jei statistika rodo, kad jūsų ekspertas patarėjas „nuolat pralaimi“ tam tikru paros metu, vadinasi, rinkoje yra šablonas, kurio neįmanoma apdoroti. Sustabdykite prekybą šiuo nepalankiu laikotarpiu ir padidinkite jos pelningumą!

Siekti sėkmės Forex rinkoje šiandien yra beveik neįmanoma atsižvelgiant į stabilų kainų elgesio modelį, kuris gali pasireikšti bet kokiais jos veiksmais.

Vienas iš šių ryškių modelių, pažįstamas beveik kiekvienam prekybininkui, pasireiškia kainų aktyvumu tam tikru paros metu.

Tiesą sakant, todėl dauguma patarėjų ir prekybos strategijos, šiandien yra aprūpinti filtru, skirtu prekybai pagal laiką, kai prekiautojas uždraudžia prekiauti pagal strategiją nepalankiu laikotarpiu.

Prekiaukite dideliu mastu tik su pirmaujančiu brokeriu

Tačiau laiko veiksnys dažnai gali būti signalinis modelis, ir prekiautojas turi kažkaip tai įgyvendinti.

Natūralu, kad nuolat tam tikru laiku būti prie monitoriaus sekundžių tikslumu, norint atidaryti suplanuotą poziciją, ne visada įmanoma.

Štai kodėl prekiautojai naudoja specialius scenarijus ir patarėjus, kurie leidžia jiems atidaryti poziciją nurodytu laiku. Tiesą sakant, šiame straipsnyje mes susipažinsime su vienu iš tokių patarėjų.

Time Advisor OpenTime 2 yra visiškai nepriklausomas MT5 prekybos terminalo prekybos ekspertas, leidžiantis įgyvendinti strategijas, pagrįstas kainų judėjimo modeliais konkrečiu paros metu.

Ypatingas OpenTime 2 bruožas yra tai, kad roboto funkcionalumas leidžia jį paversti visiškai nepriklausomu ekspertu ir optimizuojant rasti tam tikro turto kainų kitimo modelius.

Taigi, prekiautojas gali kurti strategijas, pagrįstas laiko modeliais, taip pat naudoti jį kaip asistentą įgyvendindamas savo idėjas, pavyzdžiui, atidarydamas sandorius naujienų pranešimų metu (prekyba pagal lūkesčius).

Scenarijaus diegimas diagramoje.

Pirmoji MT5 prekybos terminalo laiko patarėjo versija buvo sukurta dar 2017 m., tačiau roboto funkcionalumas buvo toks ribotas, kad jį buvo galima drąsiai priskirti paprastiems scenarijams, o ne pilnaverčiams robotams.

Tačiau 2018 metais išplėtus funkcionalumą, pagal daugelio prekybininkų rekomendacijas, robotas ne tik išpopuliarėjo, bet oficialioje MT5 kūrėjų bibliotekoje buvo paskelbtos dvi jo versijos.

Taigi patarėjas gali būti įdiegtas dviem būdais, būtent per jūsų MT5 biblioteką arba per duomenų katalogą pagal standartinę schemą.

Norėdami įdiegti patarėją per biblioteką, paleiskite savo MT5 prekybos terminalą ir eikite į skydelį „Įrankiai“, kur yra informacija apie jūsų pozicijas ir balansą.

Tada eikite į skirtuką „Biblioteka“ ir atlikite paprasčiausią rūšiavimą, kad sąraše būtų rodomi tik patarėjai.

Surūšiuodami sąrašą raskite jame „OpenTime 2“ laiko patarėją ir įkelkite jį naudodami papildomą meniu, kaip parodyta paveikslėlyje žemiau:

Jei įdiegus tokiu būdu kilo sunkumų, eikite į straipsnio pabaigą ir atsisiųskite roboto failą, kurį įdiegiate pagal standartinę schemą.

Norėdami tai padaryti, jums tereikia numesti atsisiųstą roboto failą į MT5 terminalo katalogą, būtent į aplanką Ekspertai.

Nepriklausomai nuo to, kokį diegimo būdą pasirinkote įdiegę Expert Advisor, turite iš naujo paleisti prekybos terminalą arba atnaujinti jį Naršyklės skydelyje, kitaip OpenTime 2 nepasirodys ekspertų patarėjų sąraše.

„OpenTime 2 Time Advisor“ naudojimas

Kaip pažymėjome pačioje straipsnio pradžioje, „OpenTime 2“ laiko patarėjas yra asistentas, leidžiantis įgyvendinti strategijas, pagrįstas kainų judėjimo modeliu tam tikru paros metu.

Antroji roboto versija tapo autonomiškesnė ir lankstesnė, o tai leidžia atidžiau pritaikyti sistemą operacijų atidarymui ir sekimui.

Taigi eilutėse Naudokite uždarymo laiko intervalą ir Uždarymo laiko intervalą # 2 galite duoti leidimą anksti uždaryti sandorius pirmuoju ir antruoju laiko intervalais, o kiekvieno uždarymo intervalo laikas gali būti nustatytas eilutėse Uždarymo laiko intervalas 1 ,2.

Kintamasis Trailing stop leidžia aktyvuoti trailing stopą, o stabdymo judėjimo žingsnis nurodomas eilutėje Trailing step.

Kintamuosiuose Prekyba pirmadienį – penktadienį galite uždrausti prekybą konkrečia savaitės diena, o eilutėse Atidarymo pradžios laiko intervalas ir Atidarymo pabaigos laiko intervalas galite nustatyti laiko intervalą, per kurį turi būti atidaryta pozicija.

Kintamasis Trukmė sekundėmis yra atsakingas už laikymo laiką atvira padėtis, o eilutėje Prekybos tipas laiko intervalais galite nurodyti sandorio kryptį, būtent pirkti ar parduoti.

Transakcijos kintamasis Volume yra atsakingas už atidaryto orderio prekybos lotą, o StopLoss laiko intervalo ir TakeProfit laiko intervalo kintamuosiuose galite nurodyti savo pozicijos pelno ir stop orderį.

Apibendrinant reikėtų pažymėti, kad OpenTime 2 laiko patarėjas yra labiau pažengęs ir savarankiškesnis asistentas, leidžiantis įgyvendinti strategijas, pagrįstas pozicijų atidarymu konkrečiu paros metu.

Jei tavo prekybos sistema nėra paremtas naujienų lenktynėmis, finansinei ir psichinei sveikatai gali būti labai naudinga sustabdyti patarėjo darbą prieš paskelbiant svarbias naujienas. Ir kai nepastovumas nusistovi, po kelių valandų vėl įjunkite. Gerai, jei prieiga prie darbo terminalo yra po ranka. O jei ne? Čia ir praverčia tokios veiklos automatizavimas.

Viena iš mūsų problemos sprendimo būdų yra sudaryti failą su svarbių įvykių tvarkaraščiu. Mūsų ekspertas perskaito šį failą ir nustato, kada dirbti, o kada ne. MQL4 vadovėlyje pateikiamas darbo su csv tekstiniu failu pavyzdys, remsimės juo, pakeliui atsikratydami kelių klaidų, kurias autoriai padarė netyčia arba norėdami patikrinti mūsų dėmesingumą (apie kurias jie patys įspėja). - neturėtumėte aklai niekuo pasitikėti, klaidų visada yra).

Taigi, suplanuokime svarbius įvykius kitai savaitei tokiu formatu:
Įvykio data ir laikas; įrankis; įvykio aprašymas

2016.04.01 14:00; USD; ISM gamybos verslo veiklos indeksas 2016.04.01 14:00; USD; ISM Infliacijos laipsniškas indeksas 2016.04.04 09:00 EUR; Gamintojų kainų indeksas (M) 09:01 4,0 .0 ; Gamintojų kainų indeksas (yoY) 2016 04 05 04:30; AUD; Australijos rezervų banko sprendimas dėl palūkanų normos 2016 04 05 04:30; AUD; Australijos rezervų banko kompensacinė ataskaita 2016 04 06 07:06 ECB posėdis 4 00; ,06 18:00; USD; JAV Federalinių rezervų komiteto posėdžio protokolas 2016-04-07 11:30; Informacija apie ECB posėdį pinigų politikos klausimais

Įrašykime jį į failą ht-news.csv ir patalpinkime į reikiamą katalogą \ MQL4 \ Files \ ht-news.csv, iš kur mūsų EA gali jį perskaityti.

Pirmiausia nustatykime išorinius kintamuosius tinkinimui, komentarai paaiškina jų paskirtį:

Extern string startNewsEvent = "Apriboti darbą su naujienomis"; input bool StopOnNewsEvent = true; // Įgalinti suvaržymo įvesties eilutę NewsEventFileName = "ht-news.csv"; // Failas su tvarkaraščio įvesties uint LoadNewsEventTimerInDay = 7 // Kaip dažnai per dienas reikia iš naujo įkelti failo įvesties uint StopPriorEventHours = 2; // Sustabdyti X valandas prieš įvykį įvesties uint StartAfterEventHours = 3; // Vykdyti X valandas po įvykio extern string stopNewsEvent = "-----------------";

Ši struktūra padės mums pasiekti apdorojamo įvykio aprašymą:

Struktūra NEWS_EVENT (datetime EventTime; // įvykio įvykio laikas string Instrument; // įvykio instrumento eilutė EventComment; // įvykio komentaras);

Pasirinktinė funkcija, skirta nuskaityti informaciją iš failo

Bool LoadNews () (int rankena; // Failo deskriptoriaus eilutės priemonė, // Įvykio valiutos pavadinimas firstInstrument, secondInstrument, // 1 ir 2 dabartinės poros eventComment pavadinimo dalys, // Įvykio aprašo tekstas stringDateTime; // Įvykio datos ir laiko eilutės išraiška datetime eventDateTime; // Įvykio data ir laikas datos laiko formatu rankena = FileOpen (NewsEventFileName, FILE_CSV | FILE_READ, ";"); // Failo atidarymas if (handle<0) // Неудача при открытии файла { int lastError=GetLastError(); if(lastError==4103) // Если файла не существует, сообщим Alert("Нет файла с именем ",NewsEventFileName); else // При любой другой ошибке Alert("Ошибка при открытии файла ",NewsEventFileName," :",lastError); PlaySound("Bzrrr.wav"); // Громко ругнемся и вернем фалсе return false; } int cnt=0; while(FileIsEnding(handle)==false) { stringDateTime =FileReadString(handle);// Дата и время события instrument=FileReadString(handle); //Инструмент eventComment =FileReadString(handle);// Текст описания события, может не быть eventDateTime =StrToTime(stringDateTime); // Преобразование типа данных firstInstrument=StringSubstr(Symbol(),0,3);// Извлекаем первые 3 символа secondInstrument=StringSubstr(Symbol(),3,3);// Извлекаем вторые 3 символа if(StringCompare(instrument,firstInstrument,false)!=0 && StringCompare(instrument,secondInstrument,false)!=0) { continue; //не наши инструменты } cnt++; ArrayResize(NewsEvent,cnt,1000); //изменяем размер массива с запасом для ускорения ArrayResize(NewsEventTime,cnt,1000); NewsEvent.EventTime= eventDateTime; NewsEvent.Instrument=instrument; NewsEvent.EventComment=eventComment; NewsEventTime=eventDateTime; //удобнее искать в одномерном массиве } FileClose(handle); // Закрываем файл ArraySort(NewsEventTime,WHOLE_ARRAY,0,MODE_ASCEND); //сортируем массив для последующего поиска return true; }

Mes ieškome reikiamo laiko NewsEventTime masyve ir jei laikas bus rastas, gausime jų NewsEvent struktūros masyvo aprašymą.

Eilutė GetEventInfo (data ir data) (for (int i = 0; i

Pagalbinė funkcija, skirta nustatyti, ar dabartinis laikas patenka į tuščiosios eigos intervalą

// patikrinkite, ar reikia išjungti naujienų patarėją True - work False - rest bool CheckEnableNewsWork () (if (ArraySize (NewsEventTime) == 0) grąžinti true; // dėl kokių nors priežasčių masyvas su tvarkaraščiu pasirodė kaip būti tuščias, todėl mes dirbame // dabar NewsEventTime turite rasti artimiausią datą, prieš kurią turite sustabdyti darbą StopPriorEventHours valandoms datatime timeCurrent = TimeCurrent (); datatime timeStopWork = timeCurrent + StopPriorEventHours * 3600; // Jei yra laikas NewsEventTime yra mažesnis nei timeStopWork, tada nustokite veikti int dateindex = ArrayBsearch (NewsEventTime, timeStopWork, WHOLE_ARRAY, 0, MODE_ASCEND); datetime foundEventTime = NewsEventTime; timeStopWork = foundEventTime-H0 rastas laikas nuo/3ventas-H0 stojimo laikas; ; / dabar patikrinkite, ar dabar esame timeCurrent tarp timeStopWork ir timeStartWork. Jei taip, tada nedirbkite if (timeCurrent> = timeS topDarbas ir laikas Dabartinis<=timeStartWork) { DrawLabel("EnableNewsWork","Не работаем, новость: "+GetEventInfo(foundEventTime)+"",5,80,Red); return false; } else { DrawLabel("EnableNewsWork","Нормальная работа, новостей нет",5,80,Green); return true; } }

Norėdami periodiškai skaityti iš failo su tvarkaraščiu, mums reikia laikmačio, kuris įsijungtų, pavyzdžiui, kartą per savaitę, kaip sukonfigūruota

// Patikrinkite, ar nėra failo su naujienomis pagal laikmatį void OnTimer () (jei (StopOnNewsEvent) (LoadNews (); // skaitykite failą))

Inicijuojant patarėją, reikia paleisti laikmatį ir pirmą kartą perskaityti naujienas

OnInit () .... if (StopOnNewsEvent) // Jei nustatyta, įkelkite failą su naujienomis (bool tm = EventSetTimer (LoadNewsEventTimerInDay * 86400); // paleiskite laikmatį, kad įkeltumėte failą su tvarkaraščiu if (! Tm) Alert ("EventSetTimer klaida : ", GetLastError ()); OnTimer (); // Pirmiausia paleiskite iš karto)

Prie kiekvienos varnelės tikriname, ar galime atidaryti pozicijas. Beje, tai neturėtų turėti įtakos užpakaliui.

OnTick () .... bool enableNewsWork = true; // galite dirbti su naujienų įvykiais if (StopOnNewsEvent) (enableNewsWork = CheckEnableNewsWork (); // Jei yra naujienų limitas, patikrinkite laiką) if (HaveMoney && enableNewsWork) Traiding (Pairs); // patikrinkite sąlygas ir atidarykite prekybą porai

Tai viskas. Deja, šio kodo dar neišbandžiau tikroje paskyroje, nes rašiau savaitgaliais, emuliavau varnelius su laikmačiu ir rankiniu būdu pakeičiau esamą laiką, kuris sustoja savaitgaliais. Tačiau kitą savaitę pamatysiu tai realiai, naujoje „Forex Grail 1.11“ versijoje, kur įdėjau aukščiau pateiktą kodą.

Ateityje gali tekti sukurti patogią priemonę ht-news.csv failui generuoti, pavyzdžiui, tame pačiame faile.

Šiandien kalbėsime apie tai, kaip yra pagalbiniai patarėjai, kurie pateikia pavedimus pagal rinkos laiką ir laukiančius pavedimus, taip pat kaip uždaromi sandoriai.

Geriausias brokeris

„Expert Advisor“, kuris atidaro pavedimus kas valandą arba pagal laiką, yra įrankis, padedantis įvairiose prekybos situacijose. Apskritai, kiek galiu pasakyti, susidomėjimas tokiais patarėjais, kurie atlieka tokius veiksmus, egzistuoja jau seniai. O 2006 metais tokių robotų buvo, o 2008 metais pagal pageidavimą galima sekti susidomėjimą jais, o dabar ir toliau atsiranda prašymų padaryti tokius ekspertus. Tuo pačiu metu naujokams dažnai padeda patyrę prekybininkai, o ne tik prekeiviai, bet ir užsiimantys. Apskritai tai yra gera tradicija. Paprastai tai grindžiama abipusiais mainais. Naujokas pateikia idėjas, o patyręs gauna teisę panaudoti idėją ir sukuria eksperto kodą, kuriuo dalijasi su savo partneriu.

Kai susidaro sąlygos pasinaudoti šiais ekspertais

Tačiau daugiau apie tai! Mano šiandienos istorija yra apie ekspertą patarėją, kuris gali pateikti užsakymus tinkamu laiku. Jie jį naudoja įvairiems tikslams. Pavyzdžiui, yra prekybos sistemų, kurios yra tvirtai susietos su žvakės ar sesijos pradžios momentu. Pavyzdžiui, yra ir, mano kukliais tyrimais, kažkokios tokios bangos realybėje egzistuoja, tik jos atsiranda skirtinguose laiko rėmuose, būna ir skirtingos trukmės periodų. Pavyzdžiui, galite juos rasti USDCAD svetainėje Mn.

Ten kas mėnesį yra žvakių, kurios viena į kitą labai panašios. Pavyzdžiui, sausio mėn., pavyzdžiui, per šešerius metus yra pakilimo tendencija arba kritimas nėra esmė. Norint gauti pajamų naudojant šį metodą, reikia mėnesio pradžioje pateikti užsakymą tyrimo metodo nustatyta kryptimi, o pabaigoje jį ištrinti, ir tai daryti tik tam tikrais metų mėnesiais. Būtent tai ekspertų patarėjas pateikia užsakymus pagal datą valandomis ir minutėmis.

Tinkamu laiku pavedimus išduodantis ekspertas patarėjas įgyvendina ir kitas užduotis, pavyzdžiui, žinoma, kad rytoj rinkoje bus tendencija ir prekybos idėja numato, kad reikia užimti pozicijas ant kiekvienos valandinės žvakės kryptimi mada. O pavedimus reikia pašalinti prekybos dienos pabaigoje.

Taigi užsakymai atsiras tokios tinklelio pavidalu. Kaip tai daroma kitaip, galite pamatyti puslapyje kur. Pasibaigus darbo dienai, taip pat tinkamu laiku pašalinami pirkimo, pardavimo užsakymai arba turguje.

Kodėl taip yra? Nes aš mačiau tokį požiūrį tokioje modifikacijoje: užsakymų pateikimas kiekvienai žvakei pagal rinkos orderį arba taip pat ant kiekvienos žvakės, bet pirkimas-pardavimas-stopimas priešingomis kryptimis. Antruoju atveju gali net nežinoti, kuria kryptimi judės turgus, o tiesiog pagauni judėjimą, tarsi su drugelių tinklu. Taip pat, pateikiant pirkimo, pardavimo ir sustabdymo pavedimus į abi puses, galbūt vienas iš jų neatsidarys iki dienos pabaigos ir liks kaboti.

parsisiųsti

Taigi tampa aišku, kad šiandien šiame kontekste yra trijų tipų pagalbiniai ekspertai.

  1. Pirmasis tipas yra ekspertų patarėjas rinkos pavedimams pateikti, atsižvelgiant į tam tikras valandas ir minutes,
  2. Antrasis tipas yra ekspertų patarėjas, skirtas laukiantiems užsakymams pagal valandas ir minutes.
  3. Trečiasis tipas gali būti įdiegtas per pirmuosius du arba būti atskira programa. Būtent taip yra mūsų pavyzdyje.

Rinkos užsakymų ekspertas

Kai žinote, kad kilimo tendencija prasidės 23:50 val., taigi, kaina tikrai pakils 60 punktų, o stop loss bus 30 punktų, o jūs turite EA, kuri seks stop loss, taigi jums reikia užsakymo. Tokiu atveju nebūsite toli, tad pravers atidarymo garsas. Esant tokioms sąlygoms, jums reikia pirmojo tipo eksperto. Šiuo atveju tai yra „e-OpenByTime Expert Advisor“. Šis ekspertų patarėjas, kurį galima atsisiųsti naudojant socialinius mygtukus, turi šiuos parametrus:

  • TimeTrade – čia galite nustatyti tikslų momentą, kada pavedimas turi būti atidarytas. Duomenų formatas yra hh: mm.
  • Trukmė – laikotarpis sekundėmis, per kurį ekspertas bandys pateikti užsakymą.
  • Parduoti – čia reikia nurodyti pavedimo tipą, tiesa – tai reiškia, kad bus atidarytas rinkos pavedimas parduoti turtą. False atitinka pirkimo užsakymą.
  • Lotos – šie parametrai apribos jūsų prekybos lotą iki nurodytos vertės.
  • SopLoss - stop loss skirtas keturženkliams brokeriams, todėl norint nustatyti jo dydį 30 taškų, reikia nustatyti reikšmę 300
  • TakeProfit – ta pati istorija ir su take profit.
  • MagicNumber – manau čia viskas aišku.
  • UseSound – garso nustatymai tęsiasi.
  • NameFileSound – čia pasirenkame garso failą.
  • Iš likusių nustatymų klausimų gali kilti tik „MaketWatch“. Pasirodo, šis nustatymas reikalingas tam, kad prekybos užklausos būtų siunčiamos pagal Market Watch taisykles, kurių reikalauja kai kurie brokeriai.

Laukiančių užsakymų ekspertas

Antrasis EA tipas, kuris veikia atidarant laukiančius pavedimus, yra EA, skirtas įvairioms dėžutėmis pagrįstoms prekybos sistemoms. Panašus

Šį kartą aprašysiu Expert Advisor, taip sakant, pagalbinį, kuris atidarys du pirkimo ir pardavimo sandorius abiem kryptimis, neatsižvelgdamas į tendencijas ir kitus diagramos ženklus.

Tai yra ekspertų patarėjas 37_Exp-TimeOpenBuy. Sąranka yra gana paprasta.

  • „BuyStopOpen“ ir „SellStopOpen“ šiuo atveju yra nustatyti kaip „true“.
  • Atstumas – nustato, kokiu atstumu nuo esamos kainos bus pateikti šie užsakymai. Atkreipkite dėmesį, kad reikšmė čia ir kitoje eilutėje yra skaičiuojama keturių skaitmenų brokeriui, todėl norint nustatyti atstumą, reikia naudoti skaičių, pavyzdžiui, 30 taškų ir pabaigoje pridėti dar 0.
  • TPBuyStop, SLBuyStop, TPSellStop, SLSellStop – leidžia nustatyti, koks atstumas yra kiekvieno užsakymo pelnas ir nuostolių sustabdymas. (čia taip pat pridedame nulį prie skaičiaus pabaigoje.)
  • CloseAfterOpen – leidžia ištrinti sandorį, kuris liko po to, kai buvo suaktyvintas vienas iš pirkimo, pardavimo sustabdymo pavedimų.
  • Paslydimas yra nustatymas, kuris, mano patirtimi, turi būti nustatytas bet kokia kita nei nulis vertė, kad būtų pateikti užsakymai. Tai yra didžiausia slydimo vertė.
  • CloseIfNotOpen – sukurta kaip funkcija, kuri nauju laiku pašalina visus nepavykusius pirkimo ir pardavimo sustabdymus. Tačiau kad ir kaip bandžiau pasinaudoti šia operacija, nieko neišėjo.
  • Likusios galimybės reikalingos norint nustatyti įėjimo į rinką ir pasitraukimo iš jos momentą.

Indėlininkų pašalinimo ekspertas

Galiausiai trečiasis „Expert Advisor“, kuris naudojant mql4 kodą, kurį aš sukūriau, pašalina „buy-“ laiko atžvilgiu tiksliau nei visus. Apskritai, dabar turėsite išsamų patarėją pirkimo, pardavimo sustabdymo ir rinkos pavedimams pateikti bei ekspertų patarėją, kuris uždarys užsakymus pagal laiką. Norėdami tai padaryti, prieš ciklą, kuris tiesiog uždaro pirkimo, pardavimo sustabdymo orderius arba teisingiau būtų sakyti: juos ištrina, reikia patikrinti, ar (TimeCurrent ()> = BlackTime). Tokiu atveju kintamajam priskiriamas laikas, po kurio pavedimai ištrinami.