mypo.rebalancer package¶
Submodules¶
mypo.rebalancer.base_rebalancer module¶
Rebalance strategies.
-
class
mypo.rebalancer.base_rebalancer.
BaseRebalancer
(trigger: mypo.trigger.base_trigger.BaseTrigger, optimizer: mypo.optimizer.base_optimizer.BaseOptimizer = <mypo.optimizer.no_optimizer.NoOptimizer object>, evacuate_trigger: mypo.trigger.base_trigger.BaseTrigger = <mypo.trigger.no_trigger.NoTrigger object>, evacuator: mypo.evacuator.base_evacuator.BaseEvacuator = <mypo.evacuator.no_evacuator.NoEvacuator object>)¶ Bases:
object
Interface class of Rebalance strategy class.
-
apply
(at: datetime.datetime, market: mypo.market.Market, assets: Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray], cash: numpy.float64) → numpy.ndarray¶ Apply rebalance strategy to current situation.
- Parameters
at – Current date for applying rebalance.
market – Market data for all spans.
assets – Current assets for applying rebalance.
cash – Current cash for applying rebalance.
- Returns
Deal
-
get_optimizer
() → mypo.optimizer.base_optimizer.BaseOptimizer¶ Get optimizer.
- Returns
Optimizer
-
mypo.rebalancer.monthly_rebalancer module¶
Rebalance strategies.
-
class
mypo.rebalancer.monthly_rebalancer.
MonthlyRebalancer
(optimizer: mypo.optimizer.base_optimizer.BaseOptimizer, evacuate_trigger: mypo.trigger.base_trigger.BaseTrigger = <mypo.trigger.always_trigger.AlwaysTrigger object>, evacuator: mypo.evacuator.base_evacuator.BaseEvacuator = <mypo.evacuator.no_evacuator.NoEvacuator object>, old_month: int = 0)¶ Bases:
mypo.rebalancer.base_rebalancer.BaseRebalancer
Weighted rebalance strategy by monthly applying.
mypo.rebalancer.no_rebalancer module¶
Rebalance strategies.
-
class
mypo.rebalancer.no_rebalancer.
NoRebalancer
¶ Bases:
mypo.rebalancer.base_rebalancer.BaseRebalancer
Simple weighted rebalance strategy.
mypo.rebalancer.plain_rebalancer module¶
Rebalance strategies.
-
class
mypo.rebalancer.plain_rebalancer.
PlainRebalancer
(weights: Union[int, float, complex, str, bytes, numpy.generic, Sequence[Union[int, float, complex, str, bytes, numpy.generic]], Sequence[Sequence[Any]], numpy.typing._array_like._SupportsArray], evacuator: mypo.evacuator.base_evacuator.BaseEvacuator = <mypo.evacuator.no_evacuator.NoEvacuator object>)¶ Bases:
mypo.rebalancer.base_rebalancer.BaseRebalancer
Simple weighted rebalance strategy.
mypo.rebalancer.threshold_rebalancer module¶
Rebalance strategies.
-
class
mypo.rebalancer.threshold_rebalancer.
ThresholdRebalancer
(optimizer: mypo.optimizer.base_optimizer.BaseOptimizer, threshold: numpy.float64 = 0.05)¶ Bases:
mypo.rebalancer.base_rebalancer.BaseRebalancer
Weighted rebalance strategy by monthly applying.