Skip to main content

Algoritmeportefølje

Trendkanal Algoritme

Denne tradingalgoritmen oppretter en trendkanal basert på topp og bunnpunkter, for så å handle på dette. Trendkanalen starter på nytt/slutter ved signalet fra et moving average. F. eks når moving average skifter fra negativ til positiv stigning starter trendkanalen på nytt. Akkurat nå er strategien å kjøpe og selge seg tilbake inn i trendkanalen hvis prisen treffer en av trendlinjene. Altså, hvis prisen treffer motstandslinjen så shorter den, og vice verca hvis den treffer støtte. Tanken er da at prisen holder seg inne i trendkanalen. Ordren blir behandlet og avsluttet med et trailing stop loss.

Trendkanal Algoritme demonstrert

Trendkanal Algoritme demonstrert

...
// Ny stick, oppdater gammel pris
if(IsNewBar()){previousTick = currentTick;}


if(!SymbolInfoTick(_Symbol, currentTick)){Print("Failed to print current tick"); return;}

// Sjekke posisjoner
int cntBuy, cntSell;
if(!CountOpenPositions(cntBuy, cntSell)){return;}

string objName_lower = "LowerTrend";
string objName_higher = "UpperTrend";

datetime time = TimeCurrent();

datetime twoBBT = iTime(_Symbol, _Period, 2);


//Finne trendlinje prisene
double price_lower = ObjectGetValueByTime(0, objName_lower, twoBBT);
double price_higher = ObjectGetValueByTime(0, objName_higher, twoBBT);
...

Klikk her for å se resten av koden.

Bollinger Bands Algoritme

Dette er en simpel indikator som bruker bollinger bands og moving average til å opprette kjøps/salgsanbefalinger. Når et candlestick når et upper/lower band, det har gått 30 bars siden sist kjøp/salg og den er i lik trend som det moving average er, vil det komme et kjøps/salgssignal. F. eks dersom moving averaget har negativ stigning, vil kun short signaler komme når et candlestick når det øverste båndet. Det vil ikke oppstå noen kjøpssignaler fordi det er i mot den generelle trenden. Koden ligger vedlagt på github og er skrevet i mql4 som er et innbakt programmeringspråk i handels/analyseplattformen metatrader 4.

Kjøp- og salgsanbefalinger markert med grønne og røde piler

Kjøp- og salgsanbefalinger markert med grønne og røde piler

...
if (i > 0)
{
if (telleVariabel>30 && low[i] <= BBLower[i] && low[i - 1] > BBLower[i - 1]&& MA[i-1]>MA[i])
{
BuyArrow[i] = low[i] - (600 * Point);
SellArrow[i] = EMPTY_VALUE;
telleVariabel = 0;
}
else if (telleVariabel>30 && high[i] >= BBUpper[i] && high[i - 1] < BBUpper[i - 1] && MA[i-1]<MA[i])
{
SellArrow[i] = high[i] + (500 * Point);
BuyArrow[i] = EMPTY_VALUE;
telleVariabel = 0;
}
else
{
BuyArrow[i] = EMPTY_VALUE;
SellArrow[i] = EMPTY_VALUE;
telleVariabel++;

}
}
...

Klikk her for å se resten av koden.