Zitat:
Zitat von traderdoc
Ja und was hat nun "returnBars" und "calculateValue" mit der Sinnhaftigkeit des Namens der Variablen TimeFrame zu tun?
Womit beschäftigst Du Dich denn?
Ich bin raus hier.
|
Das ist ein Indikator (nicht von mir) und wenn ich im Berechnungscode so was habe - in der Funktion int start():
Code:
int i,r,counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit=MathMin(Bars-counted_bars,Bars-1);
if(returnBars) { arrUSD[0]=limit; return(0); }
if(calculateValue || timeFrame==Period())
{ // .... mach Berechnungen }
for(i=limit,r=Bars-i-1; i>=0; i--,r++)
{
int y=iBarShift(NULL,timeFrame,Time[i]);
if(USD) arrUSD[i] = iCustom(NULL,
timeFrame,indicatorFileName,
"calculateValue",
SymbolsPrefix,SymbolsSuffix,MaMethod,MaFast,MaSlow,Price,USD,0,y);
if(!Interpolate || y==iBarShift(NULL,
timeFrame,
Time[i-1])) continue;
if(USD) interpolate(arrUSD,iTime(NULL,
timeFrame,y),i);
}
und eine Extra Funktion:
Code:
int getLimit(int limit,string tsymbol)
{
if(tsymbol!=Symbol())
limit=MathMax( MathMin( Bars-1,
iCustom(tsymbol,
timeFrame,indicatorFileName,
"returnBars",0,0)*timeFrame/Period()),
limit
);
return(limit);
}
dann frage ich mich natürlich, wann wo und wie diese Sachen definiert werden; und dabei stoße ich dann auf diese fragwürdigen Festlegungen in init() - und genau die kapier ich nicht.
Aber ich kann verstehen, daß Du raus bist. Ich bin es ehrlich gesagt auch - ist wohl mal wieder so eine Art Code so zu verkomplizieren, daß keiner weiß, was gemeint ist.
Also entweder ich schreib das Ding von Grund auf neu oder ich klopp es in die Tonne - macht keinen Sinn mit etwas zu arbeiten, was man nicht versteht.
Danke für Deine Mühe.
AVT