MQL5-ohjelmointikieli

Julkaistu:28 joulukuun 2018 Päivitetty:4 tammikuun 2024

MQL5-ohjelmointikielen perusteet

MetaQuotes Language 5 (MQL5) on MetaQuotes Software Corp:n kehittämä ohjelmointikieli kaupankäynnin automaatiosovelluksia varten. MQL5:n syntaksi muistuttaa C++:aa joitakin poikkeuksia lukuun ottamatta.

Tekniset indikaattorit on kirjoitettu MQL5:llä, kaupankäyntirobotit, neuvonantajat ja muut sovellukset kaupankäynti valuuttamarkkinoilla. MQL5-ohjelmat oliosuuntautuneen ohjelmoinnin (OOP) muodossa. MQL5-ohjelmia varten on luotu erityinen ympäristö MetaEditor ja MQL5 Storage.

Kielen peruskomponentit ovat samat kuin muissakin ohjelmointikielissä, ja lisäksi on olemassa joukko erityisominaisuuksia. MQL5:ssä tiedot voivat olla erityyppisiä – kokonaislukuja, boolean-arvoja, litteraaleja, merkkijonoja, päivämääriä, kellonaikoja, luetteloita ja muita. Monimutkaisiin tietotyyppeihin (abstrakteihin tietotyyppeihin) kuuluvat rakenteet ja luokat.

MQL5:ssä on mahdollista käyttää erilaisia operaatioita ja lausekkeita. Operaattorit ovat MQL5:ssä algoritmeja ongelmien ratkaisemiseksi, jotka muodostavat ongelman rungon. Funktiot kirjoittavat ohjelmakoodin.

Mukautettujen toimintojen kirjasto on tarkoitettu mukautettujen ohjelmien lohkojen tallentamiseen ja jakeluun. Include-tiedosto on käyttäjätiedostojen lähdekoodi, – EA:t, skriptit, kirjastot kääntämisaikana.

MQL5-kielellä on erityinen kääntäjäalijärjestelmä, joka suorittaa lähdekoodin alustavan valmistelun ennen kääntämistä. Esikäsittelijän avulla MQL5-ohjelmiin lisätään funktioita, ilmoitetaan vakioita, lisätään tiedostoja jne.

MQL5-kielen käyttö

MQL5:n avulla voit luoda vuorovaikutteisia ohjelmia, jotka on räätälöity jokaisen elinkeinonharjoittajan yksilöllisiin tarpeisiin.

MQL5:ssä on kolme päätyyppiä ohjelmia – käsikirjoitus, indikaattori ja neuvonantaja. Yksittäinen skripti suoritetaan kerran hintakaaviossa, ja tehtäviensä suorittamisen jälkeen se pysähtyy. Skripti voi myös suorittaa yhden toiminnon äärettömässä silmukassa, kunnes kauppias pysäyttää sen.

Kaaviossa voi olla monia indikaattoreita, ja ne toimivat, kunnes ne pysäytetään. Indikaattorit laskevat arvot indikaattoripuskureissa olevista hintatiedoista.

Neuvonantajat ja robotit on suunniteltu automatisoimaan kaupankäyntitoimintoja, ja niitä voidaan käyttää myös markkinatilanteen analysointiin ja muiden tehtävien suorittamiseen.

MQL5-kielen avulla voit luoda omia moduuleja kaupankäyntirobottien rakentamiseen MQL5 Wizardin avulla.

MQL5:n ohjelmat luodaan tapahtumapohjaisen mallin mukaisesti. Ne reagoivat tapahtumaan – hinnanmuutokseen, toimeksiannon toteuttamiseen, aikataulun muutokseen ja muihin.

Kuinka kirjoittaa EA MQL5:ssä

MQL5-kieli sisältää kaikki tarvittavat elementit asiantuntijaneuvojien kirjoittamiseen. Yleisesti ottaen se näyttää askel askeleelta tältä. Käynnistä MetaEditor MT5-kaupankäyntirajapinnan kautta (se ladataan tietokoneellesi samanaikaisesti kaupankäyntipalvelun kanssa), esimerkiksi napsauttamalla sopivaa kuvaketta tai painamalla näppäimistön F4-näppäintä. Editor tulee näkyviin:

Napsauta MetaEditorissa ”Create”-painiketta, jolloin avautuu ikkuna, jossa on luettelo sovelluksista, joita editorissa voi luoda.

Tässä ikkunassa on valittavana ”EA (malli)” ja ”EA (generointi)”. Valitse ja napsauta ”Next”-painiketta. Molemmissa tapauksissa näyttöön tulee ikkuna, jossa sinun on ensin annettava nimi luotavalle EA:lle ja voit kirjoittaa ”Name”-kenttään linkin verkkosivuillesi tai sähköpostiosoitteeseesi:


Mallivaihtoehdossa, napsauttamalla ”Lisää” -painiketta, sinun tulee valita parametrit, jotka asiantuntijasi neuvonantajalla tulee olla. Valitut parametrit voidaan myös poistaa napsauttamalla asianmukaista painiketta.

Jo tässä vaiheessa kauppiaalta vaaditaan vahvaa ohjelmointitaitoa ja ymmärrystä kaupankäynnistä.

Kun olet valinnut vaihtoehdon, napsauta ”Seuraava”, jolloin avautuu ikkuna, jossa pyydetään valitsemaan EA:n tapahtumankäsittelijät.

Jatka EA:n luomista napsauttamalla ”Seuraava”, valitse lisää testitapahtumien käsittelijöitä ja napsauta ”Valmis”, minkä jälkeen koodimalli ilmestyy näkyviin elinkeinonharjoittajan asettamilla parametreilla.

Koodimalliin lisätään lisäparametreja yksityiskohtaisessa MQL5-kielioppaassa määriteltyjen sääntöjen mukaisesti.

Jos MQL Wizardin kutsumisen jälkeen valitaan ”Expert Advisor (Generate)” -toiminto, niin askel askeleelta valitaan nimi (symbolit ja aikaväli on jo määritetty parametreissa), lisätään signaalien parametrit, kaupankäyntiparametrit, lisätään rahanhallintaparametrit ja napsautettuasi ”Valmis” koodimalli ilmestyy.

Editorissa on myös EA:n testaus- ja virheenkorjauspalvelut, joiden toimintaan kannattaa tutustua yksityiskohtaisissa MQL5-ohjeissa.

Kauppiaan yhteisö ja foorumi

Kaikki MQL5:n oppimiseen ja käyttöön liittyvät kysymykset käsitellään yhteisön sivuilla. Erityisesti, https://www.mql5.com/ru/forum – Kauppiaiden foorumi, josta löydät vastauksia suurimpaan osaan, ellei jopa kaikkiin, kysymyksiisi.

Ongelmana on se, että foorumi on hyvin laaja ja vie aikaa löytää tarvitsemasi tiedot. Tässä osoitteessa käsitellään vasta kieltä opettelevien kysymyksiä: https://www.mql5.com/ru/forum/6343

MQL5-sivustolla on myös kirjasto, jossa on artikkeleita kielestä osoitteessa https://www.mql5.com/ru/articles

On kuitenkin parasta aloittaa MQL5-käsikirjasta. https://www.mql5.com/ru/docs

MQL5-yhteisössä voit yksinkertaisesti ostaa EA:n, pyytää kehittämään robotin tai tarjota oman EA:si myyntiin.

Kaupankäyntisignaalit käyttämällä MQL5:n verkkosivuilla olevia EA:ita.

MQL5 verkkosivuilla on signaaleja osio MetaTrader 5 automatisoitua kaupankäyntiä varten https://www.mql5.com/ru/signals. Ensimmäiseksi on luettava kyseisen osaston säännöt.

Voit rekisteröityä sivustolle sekä tilaajaksi että signaalin myyjäksi. Tilaus voi olla maksullinen tai ilmainen, ja sen avulla voit hakea kaupankäyntisignaalit omalla kaupankäyntitililläsi. Jokainen MQL5.communityn jäsen voi tarjota signaalinsa ilmaiseksi muille kauppiaille.

Yhteisön jäsen voi myös myydä signaaleja, jos hän hyväksyy kaupankäyntisignaalien lähetyssopimuksen ehdot ja käy läpi erityisen rekisteröintimenettelyn.

Käyttäjä valitsee signaalit maksimituottojen, luotettavuuden, luokituksen ja niin edelleen kriteerien mukaan. Hän voi myös valita uuden signaalin.

Järjestelmä myös valitsee signaalit käyttäjän vaatimusten mukaisesti tietyille Forex välittäjät tai etsiä signaaleja niiden kirjoittajan mukaan. On syytä huomata, että palvelussa ilmoitetaan vastuuvapauslauseke signaalien suorituskyvystä – elinkeinonharjoittaja tilaa signaalit vain omalla vastuullaan.

Minkä neuvonantajan valita

MQL5.community tarjoaa laajan valikoiman asiantuntijaneuvojia ja kaupankäyntirobotteja lähdekoodeineen: https://www.mql5.com/ru/code/mt5/experts. Sivustolla on kaksi osiota – EAs suunniteltu MetaTrader5 ja EAs suunniteltu MetaTrader4. Palvelusta voi myös ladata indikaattoreita, skriptejä ja kirjastoja.

Neuvonantajat voidaan valita yksinkertaistetun luokituksen perusteella: neuvonantajien luettelon oikealla puolella on kaksi osiota: uusin/paras. Parhaat valitaan käyttäjien arvioinnin perusteella. Lisäksi asiantuntijaneuvojien luokitus ilmoitetaan kunkin neuvojan oikealla puolella tähdillä 1-5. Muuten käyttäjät voivat lisätä oman koodinsa käyttäjien ladattavaksi tarkoitettuun luetteloon.

Neuvonantajan voi kuitenkin myös tilata omien tarpeidensa mukaan, ja tätä varten on olemassa freelance-markkinoiden markkinat: https://www.mql5.com/ru/jobtai yksinkertaisesti ostaa (tai ladata ilmaiseksi) kaupankäyntirobottikaupasta: https://www.mql5.com/ru/market. Siellä voit myös laittaa robotin myyntiin.

Kun ostat EA:ta, on parempi olla rajoittumatta käyttäjien arvioihin, jotka on merkitty kunkin robotin alla olevilla tähdillä, mutta kysyä palautetta ja yleensä älä ole laiska tutkimaan robotin ominaisuuksia, onko se sen rahan arvoinen, jolla sitä myydään (monet robotit ovat hyvin kalliita).

Hyödylliset materiaalit

Internetissä on paljon materiaalia MQL5-ohjelmoinnista. Siihen sisältyy yksityiskohtaisia vaiheittaisia oppaita kokeneiden ohjelmoijien laatimien asiantuntijaneuvojien ja asiantuntijaneuvojien luomiseen. Suurin osa selitys- ja koulutusmateriaaleista on saatavilla itse MQL5:n verkkosivustolla.

Aiheesta on olemassa melko laaja valikoima kirjoja, erityisesti T. T:n kirjoittama ”Tutorial (guide) to the MQL5 programming language”. Mashnina (lataa ilmaiseksi), on olemassa ilmaisia videokursseja ja lukuisia innostuneita oppitunteja kauppiaiden foorumeilla. Materiaalit eivät ole vain aloittelijoille vaan myös käyttäjille, jotka haluavat syventää tietämystään.

Sinun on pidettävä mielessä, että kaikki oppitunnit vanhentuvat, itse kieli kehittyy ja paranee jatkuvasti, samoin kuin alusta, jolla sitä käytetään, ja paremman oppimateriaalin etsiminen on ajan tasalla – ja tässä on jo vaikeuksia, useimmat materiaalit ovat olleet verkossa yli vuoden.

Muuten, koska MQL5-kieli on lähellä C++:aa, monet kokeneet käyttäjät suosittelevat lukemaan C++-kielisiä kirjoja, esimerkiksi Bronson G.J. A First Book of C++, Stephan R. Davis ”C++ for Dummies”, S. Lippman ”C++ for Beginners”, B.N. Pakhomov ”C/C++ and MS Visual C++ 2010 for Beginners” jne. Kaikki nämä kirjat voi helposti ladata Internetistä. MQL5:n hallitseminen ei ole vaikeaa – C++:n hallitsemisen jälkeen.

Päätelmät

MQL5-kieli on hyväksi todettu työkalu kaupankäyntiohjelmien kirjoittamiseen, jolla on suuret mahdollisuudet. Samaan aikaan Internetistä löytyy väitteitä, joiden mukaan MQL5-kieli on helppo oppia ja sen voi hallita tyhjästä jopa kuukaudessa. Tällaisissa lausunnoissa on hyvin suuria epäilyksiä.

Syntaksin oppiminen on luultavasti mahdollista lyhyessä ajassa, mutta ohjelmointi vie paljon aikaa, varsinkin monimutkaisempien sovellusten ohjelmointi. Ja vielä kauemmin kestää oppia ohjelmoimaan todella arvokkaita sovelluksia.

On myös huomattava, että vaikein ja aikaa vievin vaihtoehto on opetella ohjelmointia itse kirjojen ja videokurssien avulla ilman kokenutta ohjelmoijaa, joka voi neuvoa sinua tärkeissä asioissa.

Toinen, vielä tärkeämpi kysymys on, onko sen oppiminen välttämätöntä. Ohjelmoinnin oppiminen voi olla järkevää, jos aiot myöhemmin kehittää ja myydä samoja kaupankäyntirobotteja ja EA:ita.

Jos kyse on kuitenkin vain kaupankäynnin optimoinnista, voi olla tehokkaampaa arvioida jo kehitettyjä sovelluksia ja valita niistä ne, jotka ovat todella hyödyllisiä.

3.70 / 3
Jätä arvostelu

Arviot

  • MQL5-verkkosivusto on huijaus. Monopolia hyödyntäen he harjoittavat aggressiivista mainontaa; äskettäin terminaaliin on ilmestynyt oikeaan yläkulmaan punaisella taustalla yksi yksikkö, joka ensin pisti silmään ja häiritsi työtä, koska työskentelet hedelmällisesti Forexissä on keskityttävä työhön eikä erilaisten mainosten häiritä. Ilmoituksia kaupankäynnistä ja markkinoiden sulkemisesta alettiin antaa englanniksi, mikä taas häiritsi työstä. Kun ilmaisin epäilykseni foorumilla, minut yksinkertaisesti kiellettiin vuoteen 2030 saakka, ilman että minun vaivautui kirjoittamaan kiellon syytä. Muuten, moderaattori tekee sen lisäksi, että hänellä ei ole lievästi sanottuna kovin korkea älykkyys, myös kielioppivirheitä ja loukkauksia. Tapasin henkilökohtaisesti niin sanotut ohjelmoijat opiskellessani ohjelmointikieltä. Kysyin, miksi en voisi tehdä sellaista ja sellaista, johon sain valmiin koodin. Kun pyysin selittämään, miksi koodi on kirjoitettu tällä tavalla eikä niin kuin minä kirjoitin, sain vastauksen suoraan leukaan, he kirjoittivat käyttävänsä antamaansa koodia. Eli ohjelmoija itse ei ymmärrä ohjelmoinnista mitään, vaan ottaa vain valmiit koodit ja kirjoittaa pöllöt, kalkkunat ja kaikkea muuta. Luonnollisesti tällaisten ohjelmoijien jälkeen mikään ei todellakaan toimi. En puhu kaikkien ohjelmoijien puolesta, mutta useimmat ovat sellaisia. Joten moraali on tämä. Ennen kuin luotat mihinkään kirjoitettuun, saati ostettuun neuvonantajaan, sinun on arvioitava tarjottava tuote kriittisesti. Todistaakseni yllä kirjoitetun liitän sivustani kuvakaappauksen, jossa näet kiellon.

    Vastauksen arvostelu
  • video siitä, miten MQL5-huijarit väärentävät tilastoja ja huijaavat tilaajia. https://www.youtube.com/watch?v=h9bEzoivCLU&t=117s

    Vastauksen arvostelu
  • Mql5 – huijarit. MQL5 verkkosivuilla väärennöksiä kaupankäyntihistoriaa kaupankäynnin tilien, kaupankäynnin kantoja, jotka on julkaistu kaupankäynnin historiassa MQL5 verkkosivuilla eivät vastaa kaupankäynnin kantoja, jotka ovat mt4 kaupankäyntijärjestelmä. MQL5-sivusto voi näyttää verkkosivuillaan vain kannat, joissa on voittoa, kun taas tappiolliset kannat, jotka ovat alustan kaupankäyntihistoriassa, MQL5-sivusto ei välttämättä näytä. Tämä johtaa ihanteelliseen kuukausittaiseen kaupankäyntihistoriaan, mutta julkaisemisen jälkeen tili palaa loppuun tilaajilla 1-2 kuukauden kuluessa.
    Myös tilin arvonalennus julkaistaan vasta tilin rekisteröintihetkestä MQL5-sivustolla, ei kaupankäyntihistoriasta. Jos tilin arvonalennus oli 90 %, MQL5-sivusto ei näytä sitä kaupankäyntihistoriassa, mutta näyttää arvonalennuksen tilin rekisteröintipäivästä MQL5-sivustolla.
    Siksi sivustolla on monia kaupankäyntitilejä, joiden maksimi drawdown on 2-10% ja kuukausittainen voitto 100-250% kuukaudessa. Tradereilla, jotka ovat menettäneet rahansa MQL5-sivustolla kopioimalla kaupankäyntisignaaleja, on oikeus vaatia MQL5-sivustolta menetettyjen varojen palauttamista ja korvausta oikeudessa.
    Mitä tulee kaupankäyntirobotteihin, se on vain sama algoritmi, joka avaa kaupankäyntipositiot automaattisesti, satunnaisesti. Sitten sivuston ylläpito muuttaa robotin nimen, lataa uuden kansikuvan, kirjoittaa mainokseen päivitetyn robotin ja myy samaa algoritmia, joka avaa positioita satunnaisesti. Ajattele loogisesti, jos MQL5-sivustolla myytävä kaupankäyntirobotti voi käydä hyvin kauppaa, miksi MQL5-sivusto myisi tätä robottia 50-100 dollarilla? Miksi MQL5-sivusto ei tee itsenäistä kaupankäyntiä? Koska tämä robotti räjäyttää talletuksesi kuukaudessa.

    Vastauksen arvostelu
    • Konstantin 12 heinäkuun 2019 klo 09:47

      Voit kiistellä siitä, että sivusto myy asiantuntijoita. Ne ovat vain foorumi, jonka kautta ohjelmoijat myyvät ohjelmia. Ja tätä varten myynnistä vähennetään prosenttiosuus palvelun hyväksi. Ja kaupankäyntihistoriaa voidaan korjata DC: ssä ja julkaista niiden signaaleja. He jakavat myös koron palvelun kanssa. Ja he ottavat päävoiton itselleen.
      Joten ei ole tarvetta rikkoa hartioita ymmärtämättä asian ydintä.

    • Vladimir Mosevnin 2 maaliskuun 2020 klo 17:09

      Vaikka jokin indikaattori tai Expert Advisor toimi täydellisesti, voit ajaa sen täysin ilmaiseksi historiallisia tapahtumia ja selvittää kannattavuuden taso tai drawdowns

Sivuston kartta