@@ -150,6 +150,9 @@ def get(self, path, data=None):
150150
151151 def post (self , path , data = None ):
152152 return self ._request ('POST' , path , data )
153+
154+ def patch (self , path , data = None ):
155+ return self ._request ('PATCH' , path , data )
153156
154157 def delete (self , path , data = None ):
155158 return self ._request ('DELETE' , path , data )
@@ -165,6 +168,25 @@ def get_account(self):
165168 resp = self .get ('/account' )
166169 return Account (resp )
167170
171+ def get_account_configs (self ):
172+ '''Get account configs'''
173+ resp = self .get ('/account/configurations' )
174+ return Account (resp )
175+
176+ def edit_account_configs (self , no_shorting = None , dtbp_check = None , trade_confirm_email = None , suspend_trade = None ):
177+ '''Edit account configs'''
178+ params = {}
179+ if no_shorting is not None :
180+ params ['no_shorting' ] = no_shorting
181+ if dtbp_check is not None :
182+ params ['dtbp_check' ] = dtbp_check
183+ if trade_confirm_email is not None :
184+ params ['trade_confirm_email' ] = trade_confirm_email
185+ if suspend_trade is not None :
186+ params ['suspend_trade' ] = suspend_trade
187+ resp = self .patch ('/account/configurations' ,params )
188+ return Account (resp )
189+
168190 def list_orders (self , status = None , limit = None , after = None , until = None ,
169191 direction = None , params = None ):
170192 '''
@@ -220,6 +242,21 @@ def get_order(self, order_id):
220242 resp = self .get ('/orders/{}' .format (order_id ))
221243 return Order (resp )
222244
245+ def replace_order (self , order_id , qty = None , limit_price = None , stop_price = None , time_in_force = None , client_order_id = None ):
246+ params = {}
247+ if qty is not None :
248+ params ['qty' ] = qty
249+ if limit_price is not None :
250+ params ['limit_price' ] = limit_price
251+ if stop_price is not None :
252+ params ['stop_price' ] = stop_price
253+ if time_in_force is not None :
254+ params ['time_in_force' ] = time_in_force
255+ if client_order_id is not None :
256+ params ['client_order_id' ] = client_order_id
257+ resp = self .patch ('/orders/{}' .format (order_id ), params )
258+ return Order (resp )
259+
223260 def cancel_order (self , order_id ):
224261 '''Cancel an order'''
225262 self .delete ('/orders/{}' .format (order_id ))
0 commit comments