예제 #1
0
 def getImpl(self):
     from marketsim.gen._out.math._exp import Exp_Float as _math_Exp_Float
     from marketsim.gen._out.side._buy import Buy_ as _side_Buy_
     from marketsim.gen._out.ops._div import Div_IObservableFloatFloat as _ops_Div_IObservableFloatFloat
     from marketsim.gen._out.math._atan import Atan_Float as _math_Atan_Float
     from marketsim.gen._out._constant import constant_Int as _constant_Int
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.side._sell import Sell_ as _side_Sell_
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.order._floatingprice import FloatingPrice_IObservableFloatFloatIObservableIOrder as _order_FloatingPrice_IObservableFloatFloatIObservableIOrder
     from marketsim.gen._out.observable._breaksatchanges import BreaksAtChanges_IObservableFloat as _observable_BreaksAtChanges_IObservableFloat
     from marketsim.gen._out.order._curried._price_limit import price_Limit_SideFloat as _order__curried_price_Limit_SideFloat
     from marketsim.gen._out.orderbook._bids import Bids_IOrderBook as _orderbook_Bids_IOrderBook
     from marketsim.gen._out.orderbook._safesideprice import SafeSidePrice_IOrderQueueFloat as _orderbook_SafeSidePrice_IOrderQueueFloat
     from marketsim.gen._out.strategy._combine import Combine_ISingleAssetStrategyISingleAssetStrategy as _strategy_Combine_ISingleAssetStrategyISingleAssetStrategy
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.event._after import After_Float as _event_After_Float
     from marketsim.gen._out.orderbook._asks import Asks_IOrderBook as _orderbook_Asks_IOrderBook
     from marketsim.gen._out.strategy._generic import Generic_IObservableIOrderIEvent as _strategy_Generic_IObservableIOrderIEvent
     from marketsim.gen._out.trader._position import Position_IAccount as _trader_Position_IAccount
     from marketsim.gen._out.order._iceberg import Iceberg_IObservableIOrderFloat as _order_Iceberg_IObservableIOrderFloat
     return _strategy_Combine_ISingleAssetStrategyISingleAssetStrategy(
         _strategy_Generic_IObservableIOrderIEvent(
             _order_Iceberg_IObservableIOrderFloat(
                 _order_FloatingPrice_IObservableFloatFloatIObservableIOrder(
                     _observable_BreaksAtChanges_IObservableFloat(
                         _observable_OnEveryDt_FloatFloat(
                             _ops_Div_IObservableFloatFloat(
                                 _orderbook_SafeSidePrice_IOrderQueueFloat(
                                     _orderbook_Asks_IOrderBook(),
                                     _constant_Float((100 + self.delta))),
                                 _math_Exp_Float(
                                     _ops_Div_FloatFloat(
                                         _math_Atan_Float(
                                             _trader_Position_IAccount()),
                                         _constant_Int(1000)))), 0.9)),
                     _order__curried_price_Limit_SideFloat(
                         _side_Sell_(), _constant_Float(
                             (self.volume * 1000)))),
                 _constant_Float(self.volume)),
             _event_After_Float(_constant_Float(0.0))),
         _strategy_Generic_IObservableIOrderIEvent(
             _order_Iceberg_IObservableIOrderFloat(
                 _order_FloatingPrice_IObservableFloatFloatIObservableIOrder(
                     _observable_BreaksAtChanges_IObservableFloat(
                         _observable_OnEveryDt_FloatFloat(
                             _ops_Div_IObservableFloatFloat(
                                 _orderbook_SafeSidePrice_IOrderQueueFloat(
                                     _orderbook_Bids_IOrderBook(),
                                     _constant_Float((100 - self.delta))),
                                 _math_Exp_Float(
                                     _ops_Div_FloatFloat(
                                         _math_Atan_Float(
                                             _trader_Position_IAccount()),
                                         _constant_Int(1000)))), 0.9)),
                     _order__curried_price_Limit_SideFloat(
                         _side_Buy_(), _constant_Float(
                             (self.volume * 1000)))),
                 _constant_Float(self.volume)),
             _event_After_Float(_constant_Float(0.0))))
예제 #2
0
 def getImpl(self):
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     from marketsim.gen._out.strategy.position._alpha import Alpha_strategypositionBollinger_linear as _strategy_position_Alpha_strategypositionBollinger_linear
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.position._k import K_strategypositionBollinger_linear as _strategy_position_K_strategypositionBollinger_linear
     from marketsim.gen._out.strategy.position._trader import Trader_strategypositionBollinger_linear as _strategy_position_Trader_strategypositionBollinger_linear
     from marketsim.gen._out.math._relstddev import RelStdDev_mathEW as _math_RelStdDev_mathEW
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(
         _ops_Mul_IObservableFloatIObservableFloat(
             deref_opt(
                 _observable_OnEveryDt_FloatFloat(
                     deref_opt(
                         _math_RelStdDev_mathEW(
                             deref_opt(
                                 _math_EW_IObservableFloatFloat(
                                     deref_opt(
                                         _orderbook_MidPrice_IOrderBook(
                                             deref_opt(
                                                 _orderbook_OfTrader_IAccount(
                                                     deref_opt(
                                                         _strategy_position_Trader_strategypositionBollinger_linear(
                                                             self.x)))))),
                                     deref_opt(
                                         _strategy_position_Alpha_strategypositionBollinger_linear(
                                             self.x)))))), 1.0)),
             deref_opt(
                 _strategy_position_K_strategypositionBollinger_linear(
                     self.x))))
 def getImpl(self):
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     from marketsim.gen._out.strategy.position._alpha import Alpha_strategypositionBollinger_linear as _strategy_position_Alpha_strategypositionBollinger_linear
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.position._k import K_strategypositionBollinger_linear as _strategy_position_K_strategypositionBollinger_linear
     from marketsim.gen._out.strategy.position._trader import Trader_strategypositionBollinger_linear as _strategy_position_Trader_strategypositionBollinger_linear
     from marketsim.gen._out.math._relstddev import RelStdDev_mathEW as _math_RelStdDev_mathEW
     from marketsim.gen._out.math._ew import EW_IObservableFloatFloat as _math_EW_IObservableFloatFloat
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(_ops_Mul_IObservableFloatIObservableFloat(deref_opt(_observable_OnEveryDt_FloatFloat(deref_opt(_math_RelStdDev_mathEW(deref_opt(_math_EW_IObservableFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_orderbook_OfTrader_IAccount(deref_opt(_strategy_position_Trader_strategypositionBollinger_linear(self.x)))))),deref_opt(_strategy_position_Alpha_strategypositionBollinger_linear(self.x)))))),1.0)),deref_opt(_strategy_position_K_strategypositionBollinger_linear(self.x))))
 def getImpl(self):
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out.strategy.position._desiredposition import DesiredPosition_IObservableFloatISingleAssetTrader as _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     from marketsim.gen._out.math.EW._relstddev import RelStdDev_IObservableFloatFloat as _math_EW_RelStdDev_IObservableFloatFloat
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     return _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader(
         _ops_Mul_IObservableFloatIObservableFloat(
             _observable_OnEveryDt_FloatFloat(
                 _math_EW_RelStdDev_IObservableFloatFloat(
                     _orderbook_MidPrice_IOrderBook(
                         _orderbook_OfTrader_IAccount(self.trader)),
                     self.alpha), 1.0), self.k), self.trader)
예제 #5
0
 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)))))))
예제 #6
0
 def getImpl(self):
     from marketsim.gen._out.math._rsi import RSI_IOrderBookFloatFloat as _math_RSI_IOrderBookFloatFloat
     from marketsim.gen._out.strategy.position._desiredposition import DesiredPosition_IObservableFloatISingleAssetTrader as _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.ops._sub import Sub_FloatFloat as _ops_Sub_FloatFloat
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     return _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader(
         _ops_Mul_IObservableFloatIObservableFloat(
             _observable_OnEveryDt_FloatFloat(
                 _ops_Sub_FloatFloat(
                     _constant_Float(50.0),
                     _math_RSI_IOrderBookFloatFloat(
                         _orderbook_OfTrader_IAccount(self.trader),
                         self.timeframe, self.alpha)), 1.0), self.k),
         self.trader)
예제 #7
0
 def getImpl(self):
     from marketsim.gen._out.strategy.position._k import K_strategypositionRSI_linear as _strategy_position_K_strategypositionRSI_linear
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     from marketsim.gen._out.strategy.position._trader import Trader_strategypositionRSI_linear as _strategy_position_Trader_strategypositionRSI_linear
     from marketsim.gen._out.math._rsi import RSI_IObservableFloatFloatFloat as _math_RSI_IObservableFloatFloatFloat
     from marketsim.gen._out.strategy.position._alpha import Alpha_strategypositionRSI_linear as _strategy_position_Alpha_strategypositionRSI_linear
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.strategy.position._timeframe import Timeframe_strategypositionRSI_linear as _strategy_position_Timeframe_strategypositionRSI_linear
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.math._value import Value_mathRSI as _math_Value_mathRSI
     from marketsim.gen._out.ops._sub import Sub_FloatIObservableFloat as _ops_Sub_FloatIObservableFloat
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(
         _ops_Mul_IObservableFloatIObservableFloat(
             deref_opt(
                 _ops_Sub_FloatIObservableFloat(
                     deref_opt(_constant_Float(50.0)),
                     deref_opt(
                         _observable_OnEveryDt_FloatFloat(
                             deref_opt(
                                 _math_Value_mathRSI(
                                     deref_opt(
                                         _math_RSI_IObservableFloatFloatFloat(
                                             deref_opt(
                                                 _orderbook_MidPrice_IOrderBook(
                                                     deref_opt(
                                                         _orderbook_OfTrader_IAccount(
                                                             deref_opt(
                                                                 _strategy_position_Trader_strategypositionRSI_linear(
                                                                     self.x)
                                                             ))))),
                                             deref_opt(
                                                 _strategy_position_Timeframe_strategypositionRSI_linear(
                                                     self.x)),
                                             deref_opt(
                                                 _strategy_position_Alpha_strategypositionRSI_linear(
                                                     self.x)))))), 1.0)))),
             deref_opt(
                 _strategy_position_K_strategypositionRSI_linear(self.x))))
예제 #8
0
 def getImpl(self):
     from marketsim.gen._out.math.EW._avg import Avg_IObservableFloatFloat as _math_EW_Avg_IObservableFloatFloat
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.math.macd._macd import MACD_IObservableFloatFloatFloat as _math_macd_MACD_IObservableFloatFloatFloat
     return _math_EW_Avg_IObservableFloatFloat(_observable_OnEveryDt_FloatFloat(_math_macd_MACD_IObservableFloatFloatFloat(self.x,self.slow,self.fast),self.step),(2/((self.timeframe+1))))
예제 #9
0
 def getImpl(self):
     from marketsim.gen._out.math._rsi import RSI_IOrderBookFloatFloat as _math_RSI_IOrderBookFloatFloat
     from marketsim.gen._out.strategy.position._desiredposition import DesiredPosition_IObservableFloatISingleAssetTrader as _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.ops._sub import Sub_FloatFloat as _ops_Sub_FloatFloat
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     return _strategy_position_DesiredPosition_IObservableFloatISingleAssetTrader(_ops_Mul_IObservableFloatIObservableFloat(_observable_OnEveryDt_FloatFloat(_ops_Sub_FloatFloat(_constant_Float(50.0),_math_RSI_IOrderBookFloatFloat(_orderbook_OfTrader_IAccount(self.trader),self.timeframe,self.alpha)),1.0),self.k),self.trader)
예제 #10
0
 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)))))))
예제 #11
0
 def getImpl(self):
     from marketsim.gen._out.math._atan import Atan_Float as _math_Atan_Float
     from marketsim.gen._out.orderbook._queue import Queue_IOrderBookSide as _orderbook_Queue_IOrderBookSide
     from marketsim.gen._out.strategy._generic import Generic_IObservableIOrderIEvent as _strategy_Generic_IObservableIOrderIEvent
     from marketsim.gen._out.observable._breaksatchanges import BreaksAtChanges_IObservableFloat as _observable_BreaksAtChanges_IObservableFloat
     from marketsim.gen._out._constant import constant_Int as _constant_Int
     from marketsim.gen._out.trader._position import Position_IAccount as _trader_Position_IAccount
     from marketsim.gen._out.strategy.price._delta import Delta_strategypriceMarketMaker as _strategy_price_Delta_strategypriceMarketMaker
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.math._exp import Exp_Float as _math_Exp_Float
     from marketsim.gen._out.strategy.price._volume import Volume_strategypriceMarketMaker as _strategy_price_Volume_strategypriceMarketMaker
     from marketsim.gen._out.orderbook._safesideprice import SafeSidePrice_IOrderQueueFloat as _orderbook_SafeSidePrice_IOrderQueueFloat
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.order._floatingprice import FloatingPrice_FloatIObservableIOrderIObservableFloat as _order_FloatingPrice_FloatIObservableIOrderIObservableFloat
     from marketsim.gen._out.ops._div import Div_IObservableFloatFloat as _ops_Div_IObservableFloatFloat
     from marketsim.gen._out.order._curried._price_limit import price_Limit_SideFloat as _order__curried_price_Limit_SideFloat
     from marketsim.gen._out.order._iceberg import Iceberg_IObservableIOrderFloat as _order_Iceberg_IObservableIOrderFloat
     from marketsim.gen._out.event._after import After_Float as _event_After_Float
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(_strategy_Generic_IObservableIOrderIEvent(deref_opt(_order_Iceberg_IObservableIOrderFloat(deref_opt(_order_FloatingPrice_FloatIObservableIOrderIObservableFloat(deref_opt(_order__curried_price_Limit_SideFloat(self.side,deref_opt(_constant_Float((deref_opt(_strategy_price_Volume_strategypriceMarketMaker(self.x))*1000))))),deref_opt(_observable_BreaksAtChanges_IObservableFloat(deref_opt(_observable_OnEveryDt_FloatFloat(deref_opt(_ops_Div_IObservableFloatFloat(deref_opt(_orderbook_SafeSidePrice_IOrderQueueFloat(deref_opt(_orderbook_Queue_IOrderBookSide(deref_opt(_orderbook_OfTrader_IAccount()),self.side)),deref_opt(_constant_Float((100+(deref_opt(_strategy_price_Delta_strategypriceMarketMaker(self.x))*self.sign)))))),deref_opt(_math_Exp_Float(deref_opt(_ops_Div_FloatFloat(deref_opt(_math_Atan_Float(deref_opt(_trader_Position_IAccount()))),deref_opt(_constant_Int(1000)))))))),0.9)))))),deref_opt(_constant_Float(deref_opt(_strategy_price_Volume_strategypriceMarketMaker(self.x)))))),deref_opt(_event_After_Float(deref_opt(_constant_Float(0.0))))))
 def getImpl(self):
     from marketsim.gen._out.strategy.position._k import K_strategypositionRSI_linear as _strategy_position_K_strategypositionRSI_linear
     from marketsim.gen._out.ops._mul import Mul_IObservableFloatIObservableFloat as _ops_Mul_IObservableFloatIObservableFloat
     from marketsim.gen._out.strategy.position._trader import Trader_strategypositionRSI_linear as _strategy_position_Trader_strategypositionRSI_linear
     from marketsim.gen._out.math._rsi import RSI_IObservableFloatFloatFloat as _math_RSI_IObservableFloatFloatFloat
     from marketsim.gen._out.strategy.position._alpha import Alpha_strategypositionRSI_linear as _strategy_position_Alpha_strategypositionRSI_linear
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.strategy.position._timeframe import Timeframe_strategypositionRSI_linear as _strategy_position_Timeframe_strategypositionRSI_linear
     from marketsim.gen._out.orderbook._midprice import MidPrice_IOrderBook as _orderbook_MidPrice_IOrderBook
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.math._value import Value_mathRSI as _math_Value_mathRSI
     from marketsim.gen._out.ops._sub import Sub_FloatIObservableFloat as _ops_Sub_FloatIObservableFloat
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(_ops_Mul_IObservableFloatIObservableFloat(deref_opt(_ops_Sub_FloatIObservableFloat(deref_opt(_constant_Float(50.0)),deref_opt(_observable_OnEveryDt_FloatFloat(deref_opt(_math_Value_mathRSI(deref_opt(_math_RSI_IObservableFloatFloatFloat(deref_opt(_orderbook_MidPrice_IOrderBook(deref_opt(_orderbook_OfTrader_IAccount(deref_opt(_strategy_position_Trader_strategypositionRSI_linear(self.x)))))),deref_opt(_strategy_position_Timeframe_strategypositionRSI_linear(self.x)),deref_opt(_strategy_position_Alpha_strategypositionRSI_linear(self.x)))))),1.0)))),deref_opt(_strategy_position_K_strategypositionRSI_linear(self.x))))
예제 #13
0
 def getImpl(self):
     from marketsim.gen._out.math._atan import Atan_Float as _math_Atan_Float
     from marketsim.gen._out.orderbook._queue import Queue_IOrderBookSide as _orderbook_Queue_IOrderBookSide
     from marketsim.gen._out.strategy._generic import Generic_IObservableIOrderIEvent as _strategy_Generic_IObservableIOrderIEvent
     from marketsim.gen._out.observable._breaksatchanges import BreaksAtChanges_IObservableFloat as _observable_BreaksAtChanges_IObservableFloat
     from marketsim.gen._out._constant import constant_Int as _constant_Int
     from marketsim.gen._out.trader._position import Position_IAccount as _trader_Position_IAccount
     from marketsim.gen._out.strategy.price._delta import Delta_strategypriceMarketMaker as _strategy_price_Delta_strategypriceMarketMaker
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.math._exp import Exp_Float as _math_Exp_Float
     from marketsim.gen._out.strategy.price._volume import Volume_strategypriceMarketMaker as _strategy_price_Volume_strategypriceMarketMaker
     from marketsim.gen._out.orderbook._safesideprice import SafeSidePrice_IOrderQueueFloat as _orderbook_SafeSidePrice_IOrderQueueFloat
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.order._floatingprice import FloatingPrice_FloatIObservableIOrderIObservableFloat as _order_FloatingPrice_FloatIObservableIOrderIObservableFloat
     from marketsim.gen._out.ops._div import Div_IObservableFloatFloat as _ops_Div_IObservableFloatFloat
     from marketsim.gen._out.order._curried._price_limit import price_Limit_SideFloat as _order__curried_price_Limit_SideFloat
     from marketsim.gen._out.order._iceberg import Iceberg_IObservableIOrderFloat as _order_Iceberg_IObservableIOrderFloat
     from marketsim.gen._out.event._after import After_Float as _event_After_Float
     from marketsim import deref_opt
     from marketsim.gen._out.orderbook._oftrader import OfTrader_IAccount as _orderbook_OfTrader_IAccount
     return deref_opt(
         _strategy_Generic_IObservableIOrderIEvent(
             deref_opt(
                 _order_Iceberg_IObservableIOrderFloat(
                     deref_opt(
                         _order_FloatingPrice_FloatIObservableIOrderIObservableFloat(
                             deref_opt(
                                 _order__curried_price_Limit_SideFloat(
                                     self.side,
                                     deref_opt(
                                         _constant_Float((deref_opt(
                                             _strategy_price_Volume_strategypriceMarketMaker(
                                                 self.x)) * 1000))))),
                             deref_opt(
                                 _observable_BreaksAtChanges_IObservableFloat(
                                     deref_opt(
                                         _observable_OnEveryDt_FloatFloat(
                                             deref_opt(
                                                 _ops_Div_IObservableFloatFloat(
                                                     deref_opt(
                                                         _orderbook_SafeSidePrice_IOrderQueueFloat(
                                                             deref_opt(
                                                                 _orderbook_Queue_IOrderBookSide(
                                                                     deref_opt(
                                                                         _orderbook_OfTrader_IAccount(
                                                                         )),
                                                                     self.
                                                                     side)),
                                                             deref_opt(
                                                                 _constant_Float((
                                                                     100 +
                                                                     (deref_opt(
                                                                         _strategy_price_Delta_strategypriceMarketMaker(
                                                                             self
                                                                             .x
                                                                         ))
                                                                      * self
                                                                      .sign)
                                                                 ))))),
                                                     deref_opt(
                                                         _math_Exp_Float(
                                                             deref_opt(
                                                                 _ops_Div_FloatFloat(
                                                                     deref_opt(
                                                                         _math_Atan_Float(
                                                                             deref_opt(
                                                                                 _trader_Position_IAccount(
                                                                                 )
                                                                             )
                                                                         )),
                                                                     deref_opt(
                                                                         _constant_Int(
                                                                             1000
                                                                         )))
                                                             ))))),
                                             0.9)))))),
                     deref_opt(
                         _constant_Float(
                             deref_opt(
                                 _strategy_price_Volume_strategypriceMarketMaker(
                                     self.x)))))),
             deref_opt(_event_After_Float(deref_opt(
                 _constant_Float(0.0))))))
예제 #14
0
 def getImpl(self):
     from marketsim.gen._out.math._exp import Exp_Float as _math_Exp_Float
     from marketsim.gen._out.side._buy import Buy_ as _side_Buy_
     from marketsim.gen._out.ops._div import Div_IObservableFloatFloat as _ops_Div_IObservableFloatFloat
     from marketsim.gen._out.math._atan import Atan_Float as _math_Atan_Float
     from marketsim.gen._out._constant import constant_Int as _constant_Int
     from marketsim.gen._out.ops._div import Div_FloatFloat as _ops_Div_FloatFloat
     from marketsim.gen._out.side._sell import Sell_ as _side_Sell_
     from marketsim.gen._out._constant import constant_Float as _constant_Float
     from marketsim.gen._out.order._floatingprice import FloatingPrice_IObservableFloatFloatIObservableIOrder as _order_FloatingPrice_IObservableFloatFloatIObservableIOrder
     from marketsim.gen._out.observable._breaksatchanges import BreaksAtChanges_IObservableFloat as _observable_BreaksAtChanges_IObservableFloat
     from marketsim.gen._out.order._curried._price_limit import price_Limit_SideFloat as _order__curried_price_Limit_SideFloat
     from marketsim.gen._out.orderbook._bids import Bids_IOrderBook as _orderbook_Bids_IOrderBook
     from marketsim.gen._out.orderbook._safesideprice import SafeSidePrice_IOrderQueueFloat as _orderbook_SafeSidePrice_IOrderQueueFloat
     from marketsim.gen._out.strategy._combine import Combine_ISingleAssetStrategyISingleAssetStrategy as _strategy_Combine_ISingleAssetStrategyISingleAssetStrategy
     from marketsim.gen._out.observable._oneverydt import OnEveryDt_FloatFloat as _observable_OnEveryDt_FloatFloat
     from marketsim.gen._out.event._after import After_Float as _event_After_Float
     from marketsim.gen._out.orderbook._asks import Asks_IOrderBook as _orderbook_Asks_IOrderBook
     from marketsim.gen._out.strategy._generic import Generic_IObservableIOrderIEvent as _strategy_Generic_IObservableIOrderIEvent
     from marketsim.gen._out.trader._position import Position_IAccount as _trader_Position_IAccount
     from marketsim.gen._out.order._iceberg import Iceberg_IObservableIOrderFloat as _order_Iceberg_IObservableIOrderFloat
     return _strategy_Combine_ISingleAssetStrategyISingleAssetStrategy(_strategy_Generic_IObservableIOrderIEvent(_order_Iceberg_IObservableIOrderFloat(_order_FloatingPrice_IObservableFloatFloatIObservableIOrder(_observable_BreaksAtChanges_IObservableFloat(_observable_OnEveryDt_FloatFloat(_ops_Div_IObservableFloatFloat(_orderbook_SafeSidePrice_IOrderQueueFloat(_orderbook_Asks_IOrderBook(),_constant_Float((100+self.delta))),_math_Exp_Float(_ops_Div_FloatFloat(_math_Atan_Float(_trader_Position_IAccount()),_constant_Int(1000)))),0.9)),_order__curried_price_Limit_SideFloat(_side_Sell_(),_constant_Float((self.volume*1000)))),_constant_Float(self.volume)),_event_After_Float(_constant_Float(0.0))),_strategy_Generic_IObservableIOrderIEvent(_order_Iceberg_IObservableIOrderFloat(_order_FloatingPrice_IObservableFloatFloatIObservableIOrder(_observable_BreaksAtChanges_IObservableFloat(_observable_OnEveryDt_FloatFloat(_ops_Div_IObservableFloatFloat(_orderbook_SafeSidePrice_IOrderQueueFloat(_orderbook_Bids_IOrderBook(),_constant_Float((100-self.delta))),_math_Exp_Float(_ops_Div_FloatFloat(_math_Atan_Float(_trader_Position_IAccount()),_constant_Int(1000)))),0.9)),_order__curried_price_Limit_SideFloat(_side_Buy_(),_constant_Float((self.volume*1000)))),_constant_Float(self.volume)),_event_After_Float(_constant_Float(0.0))))