Generic indicator factory
This commit is contained in:
+26
-2
@@ -318,7 +318,19 @@ begin
|
||||
var Lowest: Double := Double.MaxValue;
|
||||
var Highest: Double := Double.MinValue;
|
||||
|
||||
var ATR := Ohlc.Chain<Double>(TATR.CreateATR(50)).MakeParallel;
|
||||
var ATR :=
|
||||
Ohlc
|
||||
.Chain<TATR.TArgs>(
|
||||
TConverter<TOhlcItem, TATR.TArgs>.CreateConverter(
|
||||
function(const Ohlc: TOhlcItem): TATR.TArgs
|
||||
begin
|
||||
Result.Close := Ohlc.Close;
|
||||
Result.High := Ohlc.High;
|
||||
Result.Low := Ohlc.Low;
|
||||
end
|
||||
))
|
||||
.Chain<Double>(TATR.CreateATR(50))
|
||||
.MakeParallel;
|
||||
|
||||
// next stage
|
||||
|
||||
@@ -622,7 +634,19 @@ begin
|
||||
var Boli := Closes.MakeParallel.Chain<TBollingerBands.TResult>(TBollingerBands.CreateBollingerBands(20, 2.0));
|
||||
var Rsi := Closes.Chain<Double>(TRSI.CreateRSI(14));
|
||||
var Macd := Closes.MakeParallel.Chain<TMacd.TResult>(TMACD.CreateMACD(12, 26, 9));
|
||||
var Stoch := Ohlc.Chain<TStochastic.TResult>(TStochastic.CreateStochastic(14, 3));
|
||||
|
||||
var Stoch :=
|
||||
Ohlc
|
||||
.Chain<TStochastic.TArgs>(
|
||||
TConverter<TOhlcItem, TStochastic.TArgs>.CreateConverter(
|
||||
function(const Ohlc: TOhlcItem): TStochastic.TArgs
|
||||
begin
|
||||
Result.Close := Ohlc.Close;
|
||||
Result.High := Ohlc.High;
|
||||
Result.Low := Ohlc.Low;
|
||||
end
|
||||
))
|
||||
.Chain<TStochastic.TResult>(TStochastic.CreateStochastic(14, 3));
|
||||
|
||||
chart.SetXAxisSeries(timeframe, Timestamps);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user