|
4 | 4 |
|
5 | 5 | @author: gaoan |
6 | 6 | """ |
7 | | -import re |
8 | 7 | import enum |
| 8 | +import logging |
| 9 | +import re |
| 10 | + |
9 | 11 | import delorean |
10 | 12 | import six |
11 | 13 |
|
| 14 | +from tigeropen.common.consts import Market, Language, QuoteRight, BarPeriod |
12 | 15 | from tigeropen.common.consts import THREAD_LOCAL, SecurityType, CorporateActionType, IndustryLevel |
| 16 | +from tigeropen.common.consts.service_types import MARKET_STATE, ALL_SYMBOLS, ALL_SYMBOL_NAMES, BRIEF, \ |
| 17 | + TIMELINE, KLINE, TRADE_TICK, OPTION_EXPIRATION, OPTION_CHAIN, FUTURE_EXCHANGE, OPTION_BRIEF, \ |
| 18 | + OPTION_KLINE, OPTION_TRADE_TICK, FUTURE_KLINE, FUTURE_TICK, FUTURE_CONTRACT_BY_EXCHANGE_CODE, \ |
| 19 | + FUTURE_TRADING_DATE, QUOTE_SHORTABLE_STOCKS, FUTURE_REAL_TIME_QUOTE, \ |
| 20 | + FUTURE_CURRENT_CONTRACT, QUOTE_REAL_TIME, QUOTE_STOCK_TRADE, FINANCIAL_DAILY, FINANCIAL_REPORT, CORPORATE_ACTION, \ |
| 21 | + INDUSTRY_LIST, INDUSTRY_STOCKS, STOCK_INDUSTRY, STOCK_DETAIL, GRAB_QUOTE_PERMISSION |
13 | 22 | from tigeropen.common.exceptions import ApiException |
| 23 | +from tigeropen.common.util.common_utils import eastern |
| 24 | +from tigeropen.common.util.contract_utils import extract_option_info |
14 | 25 | from tigeropen.fundamental.request.model import FinancialDailyParams, FinancialReportParams, CorporateActionParams, \ |
15 | 26 | IndustryParams |
16 | 27 | from tigeropen.fundamental.response.corporate_dividend_response import CorporateDividendResponse |
17 | 28 | from tigeropen.fundamental.response.corporate_earnings_calendar_response import EarningsCalendarResponse |
18 | 29 | from tigeropen.fundamental.response.corporate_split_response import CorporateSplitResponse |
19 | | -from tigeropen.fundamental.response.financial_report_response import FinancialReportResponse |
20 | 30 | from tigeropen.fundamental.response.financial_daily_response import FinancialDailyResponse |
| 31 | +from tigeropen.fundamental.response.financial_report_response import FinancialReportResponse |
21 | 32 | from tigeropen.fundamental.response.industry_response import IndustryListResponse, IndustryStocksResponse, \ |
22 | 33 | StockIndustryResponse |
| 34 | +from tigeropen.quote.request import OpenApiRequest |
| 35 | +from tigeropen.quote.request.model import MarketParams, MultipleQuoteParams, MultipleContractParams, \ |
| 36 | + FutureQuoteParams, FutureExchangeParams, FutureTypeParams, FutureTradingTimeParams, SingleContractParams, \ |
| 37 | + SingleOptionQuoteParams |
23 | 38 | from tigeropen.quote.response.future_briefs_response import FutureBriefsResponse |
24 | | -from tigeropen.quote.response.future_exchange_response import FutureExchangeResponse |
25 | 39 | from tigeropen.quote.response.future_contract_response import FutureContractResponse |
| 40 | +from tigeropen.quote.response.future_exchange_response import FutureExchangeResponse |
26 | 41 | from tigeropen.quote.response.future_quote_bar_response import FutureQuoteBarResponse |
27 | 42 | from tigeropen.quote.response.future_quote_ticks_response import FutureTradeTickResponse |
28 | 43 | from tigeropen.quote.response.future_trading_times_response import FutureTradingTimesResponse |
| 44 | +from tigeropen.quote.response.market_status_response import MarketStatusResponse |
29 | 45 | from tigeropen.quote.response.option_briefs_response import OptionBriefsResponse |
30 | 46 | from tigeropen.quote.response.option_chains_response import OptionChainsResponse |
31 | 47 | from tigeropen.quote.response.option_expirations_response import OptionExpirationsResponse |
32 | 48 | from tigeropen.quote.response.option_quote_bar_response import OptionQuoteBarResponse |
33 | 49 | from tigeropen.quote.response.option_quote_ticks_response import OptionTradeTickResponse |
34 | 50 | from tigeropen.quote.response.quote_bar_response import QuoteBarResponse |
35 | | -from tigeropen.quote.response.quote_timeline_response import QuoteTimelineResponse |
36 | 51 | from tigeropen.quote.response.quote_brief_response import QuoteBriefResponse |
| 52 | +from tigeropen.quote.response.quote_grab_permission_response import QuoteGrabPermissionResponse |
| 53 | +from tigeropen.quote.response.quote_ticks_response import TradeTickResponse |
| 54 | +from tigeropen.quote.response.quote_timeline_response import QuoteTimelineResponse |
37 | 55 | from tigeropen.quote.response.stock_briefs_response import StockBriefsResponse |
38 | 56 | from tigeropen.quote.response.stock_details_response import StockDetailsResponse |
39 | 57 | from tigeropen.quote.response.stock_short_interest_response import ShortInterestResponse |
40 | 58 | from tigeropen.quote.response.stock_trade_meta_response import TradeMetaResponse |
41 | 59 | from tigeropen.quote.response.symbol_names_response import SymbolNamesResponse |
42 | 60 | from tigeropen.quote.response.symbols_response import SymbolsResponse |
43 | 61 | from tigeropen.tiger_open_client import TigerOpenClient |
44 | | -from tigeropen.quote.request.model import MarketParams, MultipleQuoteParams, MultipleContractParams, \ |
45 | | - FutureQuoteParams, FutureExchangeParams, FutureTypeParams, FutureTradingTimeParams, SingleContractParams, \ |
46 | | - SingleOptionQuoteParams |
47 | | -from tigeropen.quote.request import OpenApiRequest |
48 | | -from tigeropen.quote.response.quote_ticks_response import TradeTickResponse |
49 | | -from tigeropen.quote.response.market_status_response import MarketStatusResponse |
50 | | -from tigeropen.common.consts.service_types import MARKET_STATE, ALL_SYMBOLS, ALL_SYMBOL_NAMES, BRIEF, \ |
51 | | - TIMELINE, KLINE, TRADE_TICK, OPTION_EXPIRATION, OPTION_CHAIN, FUTURE_EXCHANGE, OPTION_BRIEF, \ |
52 | | - OPTION_KLINE, OPTION_TRADE_TICK, FUTURE_KLINE, FUTURE_TICK, FUTURE_CONTRACT_BY_EXCHANGE_CODE, \ |
53 | | - FUTURE_TRADING_DATE, QUOTE_SHORTABLE_STOCKS, FUTURE_REAL_TIME_QUOTE, \ |
54 | | - FUTURE_CURRENT_CONTRACT, QUOTE_REAL_TIME, QUOTE_STOCK_TRADE, FINANCIAL_DAILY, FINANCIAL_REPORT, CORPORATE_ACTION, \ |
55 | | - INDUSTRY_LIST, INDUSTRY_STOCKS, STOCK_INDUSTRY, STOCK_DETAIL |
56 | | -from tigeropen.common.consts import Market, Language, QuoteRight, BarPeriod |
57 | | -from tigeropen.common.util.contract_utils import extract_option_info |
58 | | -from tigeropen.common.util.common_utils import eastern |
59 | | -import logging |
60 | 62 |
|
61 | 63 |
|
62 | 64 | class QuoteClient(TigerOpenClient): |
@@ -1079,3 +1081,19 @@ def get_stock_industry(self, symbol, market=Market.US): |
1079 | 1081 | return response.stock_industry |
1080 | 1082 | else: |
1081 | 1083 | raise ApiException(response.code, response.message) |
| 1084 | + |
| 1085 | + def grab_quote_permission(self): |
| 1086 | + """ |
| 1087 | + 抢占行情权限 |
| 1088 | + :return: 是否抢占成功, bool 类型 |
| 1089 | + """ |
| 1090 | + request = OpenApiRequest(GRAB_QUOTE_PERMISSION) |
| 1091 | + response_content = self.__fetch_data(request) |
| 1092 | + if response_content: |
| 1093 | + response = QuoteGrabPermissionResponse() |
| 1094 | + response.parse_response_content(response_content) |
| 1095 | + if response.is_success(): |
| 1096 | + return response.is_master |
| 1097 | + else: |
| 1098 | + raise ApiException(response.code, response.message) |
| 1099 | + return False |
0 commit comments