Pagina 1 van 1

Ik begrijp het niet!

BerichtGeplaatst: di 06 mei 2003, 14:04
door Henk L
Beste Vesticgebruikers. Op weg naar een RSI system schreef ik het volgende: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? value function RSISystem (value xSeries[]=Close,value xNumberOfBars=14,value xBasisBars=50
?,value xEMABars=50, value xProfit=10, value xStopLoss=10) begin
?value xRSI,xEMA;
?xRSI := RSI(xSeries,xNumberOfbars);
Deze laatste zin werd door de correctie afgekeurd. Tussen RSI en (.....) moest een puntkomma komen. De RSI indicator wordt echter zonder problemen uitgerekend op de volgende manier: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?value function RSI (value xSeries[]=Close,value xNumberOfBars=14
?,value xOverSold=30,value xOverBought=70) begin
?value xRSI;
?xRSI := RSI(xSeries,xNumberOfbars);
?En hier heeft de correctie geen enkele moeite met de xRSI fomulering. Ik kan mij hier wezenloos over verwonderen/ergeren.Is er iemand die hier iets slims over kan zeggen? Bij voorbaat mijn dank. Henk

Ik begrijp het niet!

BerichtGeplaatst: di 06 mei 2003, 15:35
door Paul M
Wat ik doe is zelf een functie maken bv.
functie zRSI;

value function zRSI (value xSeries[],value xNumberOfbars) begin

?{---- variables used ----}
?value xUp[],xDown[],xUpAvg[],xDownAvg[],xI,xChange[];

?{---- if first time, kick-start the calculation ----}
?if CurrentBar=1 or xUpAvg[1]=_NA or xDownAvg[1]=_NA then begin
? ?for xI := xNumberOfBars-1 downto 0 do begin
? ? ?xChange := xSeries[xI]-xSeries[xI+1];
? ? ?if xChange>0 then xUp[xI] := xChange else xUp[xI] := 0;
? ? ?if xChange<0 then xDown[xI] := -xChange else xDown[xI] := 0;
? ? ?end;
? ?xUpAvg := Average(xUp,xNumberOfBars);
? ?xDownAvg := Average(xDown,xNumberOfBars);
? ?end

?{---- else calculate new up and down value ----}
?else begin
? ?xChange := xSeries-xSeries[1];
? ?if xChange>0 then xUp := xChange else xUp := 0;
? ?if xChange<0 then xDown := -xChange else xDown := 0;
? ?xUpAvg := ((xNumberOfBars-1)*xUpAvg[1]+xUp)/xNumberOfbars;
? ?xDownAvg := ((xNumberOfBars-1)*xDownAvg[1]+xDown)/xNumberOfBars;
? ?end;

?{---- now calculate relative strength up and down ----}
?if xDownAvg=0 and xUpAvg=0 then zRSI := _NA
?else if xDownAvg=0 then zRSI := 100
?else zRSI := 100-100/(xUpAvg/xDownAvg+1);

?end;
En dan doet hij het.
Groetjes Paul

Ik begrijp het niet!

BerichtGeplaatst: za 10 mei 2003, 5:40
door JVerv
Henk,

In het verleden heb ik ook te maken gehad met deze foutmelding. Ik heb toen intensief contact met Pierre gehad. Uiteindelijk kwam ik toen niet verder dan de hele functie verwijderen uit de editor en hem volledig opnieuw intikken. Het is een vreemde glitch waar niet goed is aan te wijzen waar hij vandaan komt. Ik heb er de laatste maanden geen last meer van gehad.

Jan