def getImpl(self):
     from marketsim.gen._out.math._value import Value_mathmacd as _math_Value_mathmacd
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_observable_OnEveryDt_FloatFloat(deref_opt(_math_Value_mathmacd(self.x)),self.step)),(2/((self.timeframe+1)))))))
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.side._alpha import Alpha_strategysideMeanReversion as _strategy_side_Alpha_strategysideMeanReversion
     from marketsim.gen._out.strategy.side._book import book_strategysideMeanReversion as _strategy_side_book_strategysideMeanReversion
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_strategy_side_book_strategysideMeanReversion(self.x)))),deref_opt(_strategy_side_Alpha_strategysideMeanReversion(self.x))))))
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.math._source import Source_mathmacd as _math_Source_mathmacd
     from marketsim.gen._out.math._slow import Slow_mathmacd as _math_Slow_mathmacd
     from marketsim.gen._out.math._fast import Fast_mathmacd as _math_Fast_mathmacd
     from marketsim.gen._out.ops._sub import Sub_FloatFloat as _ops_Sub_FloatFloat
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_ops_Sub_FloatFloat(deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_math_Source_mathmacd(self.x)),(2.0/((deref_opt(_math_Fast_mathmacd(self.x))+1))))))),deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_math_Source_mathmacd(self.x)),(2.0/((deref_opt(_math_Slow_mathmacd(self.x))+1)))))))))
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.orderbook._lasttradevolume import LastTradeVolume_IOrderQueue as _orderbook_LastTradeVolume_IOrderQueue
     from marketsim.gen._out.orderbook._lasttradeprice import LastTradePrice_IOrderQueue as _orderbook_LastTradePrice_IOrderQueue
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_ops_Div_FloatFloat(deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_ops_Mul_IObservableFloatIObservableFloat(deref_opt(_orderbook_LastTradePrice_IOrderQueue(self.queue)),deref_opt(_orderbook_LastTradeVolume_IOrderQueue(self.queue)))),self.alpha)))),deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_LastTradeVolume_IOrderQueue(self.queue)),self.alpha))))))
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.side._alpha import Alpha_strategysideTrendFollower as _strategy_side_Alpha_strategysideTrendFollower
     from marketsim.gen._out.strategy.side._book import Book_strategysideTrendFollower as _strategy_side_Book_strategysideTrendFollower
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim.gen._out.math._derivative import Derivative_IDifferentiable as _math_Derivative_IDifferentiable
     from marketsim import deref_opt
     return deref_opt(_math_Derivative_IDifferentiable(deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_strategy_side_Book_strategysideTrendFollower(self.x)))),deref_opt(_strategy_side_Alpha_strategysideTrendFollower(self.x))))))))
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.side._book import Book_strategysideCrossingAverages as _strategy_side_Book_strategysideCrossingAverages
     from marketsim.gen._out.ops._sub import Sub_FloatFloat as _ops_Sub_FloatFloat
     from marketsim.gen._out.strategy.side._alpha_1 import Alpha_1_strategysideCrossingAverages as _strategy_side_Alpha_1_strategysideCrossingAverages
     from marketsim.gen._out.strategy.side._alpha_2 import Alpha_2_strategysideCrossingAverages as _strategy_side_Alpha_2_strategysideCrossingAverages
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_ops_Sub_FloatFloat(deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_strategy_side_Book_strategysideCrossingAverages(self.x)))),deref_opt(_strategy_side_Alpha_1_strategysideCrossingAverages(self.x)))))),deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_strategy_side_Book_strategysideCrossingAverages(self.x)))),deref_opt(_strategy_side_Alpha_2_strategysideCrossingAverages(self.x))))))))
 def getImpl(self):
     from marketsim.gen._out.math._alpha import Alpha_mathRSI as _math_Alpha_mathRSI
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.math._downmovements import DownMovements_IObservableFloatFloat as _math_DownMovements_IObservableFloatFloat
     from marketsim.gen._out.math._upmovements import UpMovements_IObservableFloatFloat as _math_UpMovements_IObservableFloatFloat
     from marketsim.gen._out.math._source import Source_mathRSI as _math_Source_mathRSI
     from marketsim.gen._out.math._timeframe import Timeframe_mathRSI as _math_Timeframe_mathRSI
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     return deref_opt(_ops_Div_FloatFloat(deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_math_UpMovements_IObservableFloatFloat(deref_opt(_math_Source_mathRSI(self.x)),deref_opt(_math_Timeframe_mathRSI(self.x)))),deref_opt(_math_Alpha_mathRSI(self.x)))))),deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_math_DownMovements_IObservableFloatFloat(deref_opt(_math_Source_mathRSI(self.x)),deref_opt(_math_Timeframe_mathRSI(self.x)))),deref_opt(_math_Alpha_mathRSI(self.x))))))))
    def getImpl(self):
        from marketsim.gen._out.trader._efficiency import Efficiency_IAccount as _trader_Efficiency_IAccount
        from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
        from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
        from marketsim.gen._out.math._derivative import Derivative_IDifferentiable as _math_Derivative_IDifferentiable
        from marketsim import deref_opt

        return deref_opt(
            _math_Derivative_IDifferentiable(
                deref_opt(
                    _math_Avg_mathEW(
                        deref_opt(
                            _math_EW_IObservableFloatFloat(
                                deref_opt(_trader_Efficiency_IAccount(self.trader)), self.alpha
                            )
                        )
                    )
                )
            )
        )
 def getImpl(self):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.ops._sub import Sub_IObservableFloatFloat as _ops_Sub_IObservableFloatFloat
     from marketsim.gen._out.math._source import Source_mathEW as _math_Source_mathEW
     from marketsim.gen._out.ops._div import Div_IObservableFloatFloat as _ops_Div_IObservableFloatFloat
     from marketsim.gen._out.math._stddev import StdDev_mathEW as _math_StdDev_mathEW
     from marketsim import deref_opt
     return deref_opt(_ops_Div_IObservableFloatFloat(deref_opt(_ops_Sub_IObservableFloatFloat(deref_opt(_math_Source_mathEW(self.x)),deref_opt(_math_Avg_mathEW(self.x)))),deref_opt(_math_StdDev_mathEW(self.x))))
 def __init__(self, x = None):
     from marketsim.gen._out.math._avg import Avg_mathEW as _math_Avg_mathEW
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     self.x = x if x is not None else deref_opt(_math_Avg_mathEW(deref_opt(_math_EW_IObservableFloatFloat())))
     Derivative_Impl.__init__(self)