MCPcopy Create free account
hub / github.com/TraderOracle/ATAS / DeltaIntensity

Class DeltaIntensity

DeltaIntensity.cs:15–102  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13 using OFT.Rendering.Tools;
14
15 [DisplayName("Delta Intensity")]
16 public class DeltaIntensity : Indicator
17 {
18 private int iBigTrades = 25000;
19
20 [Range(1, 100000)]
21 public int Bigtrades_Threshold
22 { get => iBigTrades; set { if (value < 1) return; iBigTrades = value; RecalculateValues(); } }
23
24 private readonly ValueDataSeries _Weird = new("Unusual Candle")
25 { Color = Colors.LightCoral, VisualType = VisualMode.Dots, Width = 4 };
26
27 private readonly ValueDataSeries _DeltaDivRed = new("Delta Divergence Red")
28 { Color = Colors.Red, VisualType = VisualMode.Dots, Width = 4 };
29
30 private readonly ValueDataSeries _DeltaDivGreen = new("Delta Divergence Green")
31 { Color = Colors.Lime, VisualType = VisualMode.Dots, Width = 4 };
32
33 private readonly ValueDataSeries _VolSecNeg = new("Volume/Second Negative")
34 { Color = Colors.Red, VisualType = VisualMode.Histogram };
35
36 private readonly ValueDataSeries _VolSecPos = new("Volume/Second Positive")
37 { Color = Colors.LimeGreen, VisualType = VisualMode.Histogram };
38
39 private readonly ValueDataSeries _negSeries = new("Negative Delta")
40 { Color = Colors.DarkOrange, VisualType = VisualMode.Histogram };
41
42 private readonly ValueDataSeries _posSeries = new("Positive Delta")
43 { Color = Colors.DarkGreen, VisualType = VisualMode.Histogram };
44
45 public DeltaIntensity() :
46 base(true)
47 {
48 Panel = IndicatorDataProvider.NewPanel;
49 DataSeries[0] = _posSeries;
50 DataSeries.Add(_negSeries);
51 DataSeries.Add(_VolSecPos);
52 DataSeries.Add(_VolSecNeg);
53
54 DataSeries.Add(_Weird);
55 DataSeries.Add(_DeltaDivRed);
56 DataSeries.Add(_DeltaDivGreen);
57 }
58
59 protected override void OnCalculate(int bar, decimal value)
60 {
61 if (bar < 2)
62 return;
63
64 var candle = GetCandle(bar);
65
66 value = candle.Close;
67 var red = candle.Close < candle.Open;
68 var green = candle.Close > candle.Open;
69
70 var candleSeconds = Convert.ToDecimal((candle.LastTime - candle.Time).TotalSeconds);
71 if (candleSeconds is 0)
72 candleSeconds = 1;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected