Skip to content

Commit 5803155

Browse files
authored
Merge pull request #2517 from Ruuudy1/feature-alternative-equities-static-universe
Add manual indicator alternative for equities-static-universe
2 parents 01adc12 + 4fc4ffc commit 5803155

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

  • project-templates
    • csharp/equities-static-universe
    • python/equities-static-universe

project-templates/csharp/equities-static-universe/Main.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,12 +68,17 @@ public override void Initialize()
6868
SetStartDate(2024, 9, 1);
6969
SetEndDate(2024, 12, 31);
7070
SetCash(100000);
71+
// AutomaticIndicatorWarmUp only supports automatic indicators, not manual indicators.
7172
Settings.AutomaticIndicatorWarmUp = true;
7273
var tickers = new string[] {"SPY", "QQQ", "IWM"};
7374
foreach (var ticker in tickers)
7475
{
7576
dynamic equity = AddEquity(ticker);
7677
equity.Macd = MACD(equity, 12, 26, 9, MovingAverageType.Exponential, Resolution.Daily);
78+
// Alternatively, use a manual indicator.
79+
// equity.Macd = new MovingAverageConvergenceDivergence(12, 26, 9, MovingAverageType.Exponential);
80+
// WarmUpIndicator<IndicatorDataPoint>(equity.Symbol, equity.Macd, Resolution.Daily);
81+
// RegisterIndicator(equity.Symbol, equity.Macd, Resolution.Daily);
7782
PlotIndicator(ticker, equity.Macd);
7883
}
7984
Schedule.On(DateRules.EveryDay("SPY"), TimeRules.AfterMarketOpen("SPY", 1), Rebalance);
@@ -96,4 +101,4 @@ private void Rebalance()
96101
}
97102
}
98103
}
99-
}
104+
}

project-templates/python/equities-static-universe/main.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,15 @@ def initialize(self) -> None:
99
self.set_start_date(2024, 9, 1)
1010
self.set_end_date(2024, 12, 31)
1111
self.set_cash(100000)
12+
# automatic_indicator_warm_up only supports automatic indicators, not manual indicators.
1213
self.settings.automatic_indicator_warm_up = True
1314
for ticker in ["SPY", "QQQ", "IWM"]:
1415
equity = self.add_equity(ticker)
1516
equity.macd = self.macd(equity, 12, 26, 9, MovingAverageType.EXPONENTIAL, Resolution.DAILY)
17+
# Alternatively, use a manual indicator.
18+
# equity.macd = MovingAverageConvergenceDivergence(12, 26, 9, MovingAverageType.EXPONENTIAL)
19+
# self.warm_up_indicator(equity, equity.macd, Resolution.DAILY)
20+
# self.register_indicator(equity, equity.macd, Resolution.DAILY)
1621
self.plot_indicator(ticker, equity.macd)
1722
self.schedule.on(self.date_rules.every_day('SPY'), self.time_rules.after_market_open('SPY', 1), self._rebalance)
1823

0 commit comments

Comments
 (0)