2.1 Grunnbegreper: variabler, betingelser og funksjoner
Du trenger ikke være programmerer for å bygge en enkel robot. Du trenger fire byggeklosser. Eksemplene er i MQL5, men de ser nesten like ut i MQL4 og C#.
1. Variabler og typer
En variabel er en navngitt boks som holder en verdi. Hver variabel har en type som sier hva slags verdi den kan holde.
int period = 14; // heltall
double price = 1.08452; // desimaltall
bool isBuy = true; // sant eller usant
string name = "K2 Algo"; // tekstAlt etter // er en kommentar. Den er for mennesker – datamaskinen hopper over den.
2. Input-parametere
Ordet input gjør en variabel om til en innstilling du kan endre i plattformen uten å røre koden. I cTrader gjør du det samme med [Parameter].
input int InpFastPeriod = 10; // Rask MA
input double InpRiskPercent = 1.0; // Risiko per handel i %3. Betingelser
Med if bestemmer roboten hva den skal gjøre. && betyr «og», || betyr «eller», og ! betyr «ikke».
if(fast1 > slow1 && fast2 <= slow2)
{
// rask MA har krysset over treg MA: kjøp
}
else if(fast1 < slow1 && fast2 >= slow2)
{
// krysset under: selg
}4. Funksjoner
En funksjon er en navngitt blokk kode som gjør én jobb. Den kan ta imot verdier og gi tilbake et svar.
double PipsToPrice(double pips)
{
return(pips * 10 * _Point); // på et 5-desimalers valutapar
}Semikolon og krøllparenteser
- Hver instruksjon slutter med semikolon
;. - Krøllparenteser
{ }samler flere linjer til én blokk. - Store og små bokstaver betyr noe:
Priceogpriceer to forskjellige variabler.
De vanligste feilene
Nesten alle feil nybegynnere får når de kompilerer, skyldes et manglende semikolon, en krøllparentes som ikke er lukket, eller en skrivefeil i et variabelnavn. Feilmeldingen sier hvilken linje det gjelder – start der, og se på linjen over.
Kort oppsummert
- Variabler holder verdier, og typen sier hva slags verdi.
- input (MQL) og [Parameter] (cTrader) gjør variabler til innstillinger.
- if bestemmer hva roboten gjør, og funksjoner samler kode som gjør én jobb.
65% av ikke-profesjonelle taper penger når de handler CFDer med denne leverandøren.