Exemple #1
0
    def GET_TRADERS_INFO(self):

        request = broker_pb2.TraderRequest(trader_id=self.trader_id,
                                           trader_pin=self.trader_pin,
                                           request_type="FULL_INFO")

        return self.stub.get_traders_info(request)
Exemple #2
0
    def CANCEL_ORDER(self, order_id):

        request = broker_pb2.TraderRequest(trader_id=self.trader_id,
                                           trader_pin=self.trader_pin,
                                           request_type="CANCEL_ORDER",
                                           order_id=order_id)
        return self.stub.cancel_order(request)
Exemple #3
0
 def CancelOrder(self, order_id):
     ret = self.stub.cancel_order(
         broker_pb2.TraderRequest(trader_id=id,
                                  trader_pin=pin,
                                  request_type='CANCEL_ORDER',
                                  order_id=order_id))
     print(ret)
def TraderRequest_cancel_order(order_id, *args, **kw):
    return broker_pb2.TraderRequest(trader_id=ID,
                                    trader_pin=PIN,
                                    request_type=1,
                                    order_id=order_id,
                                    *args,
                                    **kw)
Exemple #5
0
 def GetTrader(self, request_type='INCREMENTAL_INFO'):
     ret = self.stub.get_trader(
         broker_pb2.TraderRequest(trader_id=id,
                                  trader_pin=pin,
                                  request_type=request_type))
     print('Get Trader ret:')
     for rec in ret.market_records:
         print(rec.symbol)
         print(rec.percent)
     print(ret)
    def NEW_ORDER(self, SYMBAL, SIDE, VOL, PRICE, POS_TYPE, IS_MARKET=False):
        request = broker_pb2.TraderRequest(trader_id=self.trader_id,
                                           trader_pin=self.trader_pin,
                                           request_type="NEW_ORDER",
                                           side=SIDE,
                                           symbol=SYMBAL,
                                           volume=VOL,
                                           price=PRICE,
                                           pos_type=POS_TYPE,
                                           is_market=IS_MARKET)

        return self.stub.new_order(request)
def TraderRequest_new_order(symbol,
                            side,
                            pos_type,
                            volume,
                            price=None,
                            is_market=False,
                            *args,
                            **kw):
    return broker_pb2.TraderRequest(trader_id=ID,
                                    trader_pin=PIN,
                                    request_type=0,
                                    side=side,
                                    symbol=symbol,
                                    pos_type=pos_type,
                                    volume=volume,
                                    price=price,
                                    is_market=is_market,
                                    *args,
                                    **kw)
Exemple #8
0
 def NewOrder(self,
              side='BID',
              symbol=stocks_A[0],
              volume=1,
              price=100,
              is_market=False,
              pos_type='LONG'):
     ret = self.stub.new_order(
         broker_pb2.TraderRequest(trader_id=id,
                                  trader_pin=pin,
                                  request_type='NEW_ORDER',
                                  side=side,
                                  symbol=symbol,
                                  volume=volume,
                                  price=price,
                                  is_market=is_market,
                                  pos_type=pos_type))
     print('New Order ret:-----------------------------------------------')
     print(ret)
     return ret
Exemple #9
0
import tradingObjects
"""
配置背景参数。
"""

ID = 3
PIN = 'jY0RyHyK9'
CHANNEL_BROKER = grpc.insecure_channel('113.208.112.25:57503')
CHANNEL_DATA = grpc.insecure_channel('113.208.112.25:57600')

broker_stub = broker_pb2_grpc.BrokerStub(CHANNEL_BROKER)
data_stub = broker_pb2_grpc.MarketDataStub(CHANNEL_DATA)
#//创建客户端

data_stream = data_stub.subscribe(
    broker_pb2.TraderRequest(trader_id=ID, trader_pin=PIN))
#//获取行情流对象

api.set_stub(broker_stub, data_stub)
api.set_stream(data_stream)
#//设置api客户端


def initStrategy(runtime):
    """
    初始化策略。
    """
    #api.cancel_all()
    #api.close_all_at_market()

    runtime['trader_info_full'] = api.get_trader_full()
import tradingObjects
"""
配置背景参数。
"""

ID = 33
PIN = 'jY0RyHyK9'
CHANNEL_BROKER = grpc.insecure_channel('113.208.112.25:57503') 
CHANNEL_DATA = grpc.insecure_channel('113.208.112.25:57600')

broker_stub = broker_pb2_grpc.BrokerStub(CHANNEL_BROKER)
data_stub = broker_pb2_grpc.MarketDataStub(CHANNEL_DATA)
#//创建客户端

data_stream = data_stub.subscribe(broker_pb2.TraderRequest(trader_id = ID, trader_pin = PIN))
#//获取行情流对象

api.set_stub(broker_stub, data_stub)
api.set_stream(data_stream)
#//设置api客户端

def initStrategy(runtime):
    """
    初始化策略。
    """
    #api.cancel_all()
    #api.close_all_at_market()

    runtime['trader_info_full'] = api.get_trader_full()
    runtime['account_info'] = runtime['trader_info_full'].account
Exemple #11
0
# with grpc.insecure_channel('113.208.112.25:57600') as channel:
#     stub = broker_pb2_grpc.MarketDataStub(channel)
#     response = stub.list_instruments(common_pb2.Empty())
#     print("Instruments received: " )
#     print(response)
#     for data in stub.subscribe(common_pb2.Empty()):
#
#         print("Subscription received: ")
#         print(data)
#
# =============================================================================
with grpc.insecure_channel('113.208.112.25:57500') as channel:
    stub = broker_pb2_grpc.BrokerStub(channel)
    response = stub.get_trader(
        broker_pb2.TraderRequest(trader_id=42,
                                 trader_pin='NrojE4oZH',
                                 request_type='FULL_INFO'))
    print("Instruments received: ")
    print(response)
# =============================================================================
#     for data in stub.subscribe(common_pb2.Empty()):
# # =============================================================================
# #         response=stub.subscribe(common_pb2.Empty())
# # =============================================================================
#         print("Subscription received: ")
#         print(data)
#
# =============================================================================

# =============================================================================
# trader_id=42,trader_pin='NrojE4oZH'
Exemple #12
0
#Create channel
broker_channel = grpc.insecure_channel('113.208.112.25:57503')
data_channel = grpc.insecure_channel('113.208.112.25:57600')
#create stub
broker_stub = broker_pb2_grpc.BrokerStub(broker_channel)
md_stub = broker_pb2_grpc.MarketDataStub(data_channel)

api.set_stub(broker_stub, md_stub)
"""
Demo: 下单
"""
TraderRequest_new_order = broker_pb2.TraderRequest(trader_id=ID,
                                                   trader_pin=PIN,
                                                   request_type=0,
                                                   order_id=0,
                                                   side=0,
                                                   symbol='A000.PSE',
                                                   volume=1,
                                                   is_market=True,
                                                   pos_type=1)
TraderRequest_new_order_test = proto_wrapper.TraderRequest_new_order(
    "A000.PSE", side=0, pos_type=0, volume=1, is_market=False, price=90)
response_new_order = broker_stub.new_order(TraderRequest_new_order_test)
print(response_new_order)
print("##########################################")
"""
Demo: 撤单
"""
TraderRequest_cancel_order = proto_wrapper.TraderRequest_cancel_order(
    order_id=tuple(response_new_order.orders.orders.keys())[0])
response_cancel_order = broker_stub.cancel_order(TraderRequest_cancel_order)
def TraderRequest_get_trader_inc():
    return broker_pb2.TraderRequest(trader_id=ID,
                                    trader_pin=PIN,
                                    request_type=3)
def TraderRequest(*args, **kw):
    return broker_pb2.TraderRequest(trader_id=ID, trader_pin=PIN, *args, **kw)