@@ -13,7 +13,7 @@ def __init__(self):
1313
1414 def create (self , id ):
1515 traders = self ._create_traders (id )
16- return StrategyManager (id , self ._create_logger (), self ._config , traders )
16+ return StrategyManager (id , self ._create_logger (), self ._config , traders , self . _get_context () )
1717
1818 def _get_context (self ):
1919 pass
@@ -60,6 +60,9 @@ def is_sim_trade(self):
6060 def is_backtest (self ):
6161 pass
6262
63+ def is_read_file_allowed (self ):
64+ return False
65+
6366
6467class BaseLogger (object ):
6568 def debug (self , msg , * args , ** kwargs ):
@@ -81,11 +84,12 @@ def exception(self, msg, *args, **kwargs):
8184class StrategyManager (object ):
8285 THEMATIC_BREAK = '-' * 50
8386
84- def __init__ (self , id , logger , config , traders ):
87+ def __init__ (self , id , logger , config , traders , strategy_context ):
8588 self ._id = id
8689 self ._logger = logger
8790 self ._config = config
8891 self ._traders = traders
92+ self ._strategy_context = strategy_context
8993
9094 @property
9195 def id (self ):
@@ -130,6 +134,8 @@ def work(self):
130134 self ._logger .info (self .THEMATIC_BREAK )
131135
132136 def _refresh (self ):
137+ if not self ._strategy_context .is_read_file_allowed ():
138+ return
133139 self ._config .reload ()
134140 trader_configs = self ._config .build_trader_configs (self ._id )
135141 for id , trader in self ._traders .items ():
@@ -270,7 +276,7 @@ def _execute(self, order):
270276 if not self ._should_run ():
271277 self ._logger .info ("[%s] %s" , self .id , order )
272278 return None
273- actual_order = self ._do_execute (order )
279+ actual_order = self ._do_execute (order )
274280 return actual_order
275281
276282 def _cancel (self , order ):
@@ -388,7 +394,7 @@ def data(self):
388394
389395 def reload (self ):
390396 content = self ._strategy_context .read_file ('shipane_sdk_config.yaml' )
391- stream = six .StringIO (content )
397+ stream = six .BytesIO (content )
392398 self ._data = yaml .load (stream , Loader = OrderedDictYAMLLoader )
393399 self ._proxies = self ._create_proxy_configs ()
394400 stream .close ()
0 commit comments