webull-openapi-python-sdk 2.0.11__py3-none-any.whl → 2.0.13__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- samples/__init__.py +1 -1
- samples/data/data_client.py +120 -0
- samples/trade/activities_client.py +59 -0
- webull/__init__.py +1 -1
- webull/core/__init__.py +1 -1
- webull/data/__init__.py +1 -1
- webull/data/data_client.py +2 -0
- webull/data/quotes/fundamentals.py +335 -0
- webull/data/quotes/screener.py +88 -0
- webull/data/request/get_capital_flow_request.py +35 -0
- webull/data/request/get_dividend_calendar_request.py +31 -0
- webull/data/request/get_earnings_calendar_request.py +31 -0
- webull/data/request/get_financials_alert_request.py +31 -0
- webull/data/request/get_financials_balance_sheet_request.py +39 -0
- webull/data/request/get_financials_cashflow_request.py +39 -0
- webull/data/request/get_financials_income_request.py +39 -0
- webull/data/request/get_financials_indicators_request.py +39 -0
- webull/data/request/get_forecast_eps_request.py +31 -0
- webull/data/request/get_fund_allocation_request.py +31 -0
- webull/data/request/get_fund_brief_request.py +31 -0
- webull/data/request/get_fund_dividends_request.py +39 -0
- webull/data/request/get_fund_files_request.py +31 -0
- webull/data/request/get_fund_holdings_request.py +31 -0
- webull/data/request/get_fund_net_value_request.py +39 -0
- webull/data/request/get_fund_performance_request.py +31 -0
- webull/data/request/get_fund_rating_request.py +31 -0
- webull/data/request/get_fund_splits_request.py +31 -0
- webull/data/request/get_industry_comparison_request.py +35 -0
- webull/data/request/get_sec_filings_request.py +31 -0
- webull/data/request/screener/get_52whl_request.py +47 -0
- webull/data/request/screener/get_high_dividend_request.py +43 -0
- webull/data/request/screener/get_market_sectors_detail_request.py +51 -0
- webull/data/request/screener/get_market_sectors_request.py +47 -0
- webull/trade/__init__.py +1 -1
- webull/trade/request/get_activities_request.py +39 -0
- webull/trade/trade/activity.py +49 -0
- webull/trade/trade_client.py +2 -0
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/METADATA +1 -1
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/RECORD +43 -15
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/WHEEL +1 -1
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/licenses/LICENSE +0 -0
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/licenses/NOTICE +0 -0
- {webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.core.request import ApiRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class GetSecFilingsRequest(ApiRequest):
|
|
21
|
+
def __init__(self):
|
|
22
|
+
ApiRequest.__init__(self, "/openapi/fundamentals/stock/filings", version='v2', method="GET",
|
|
23
|
+
query_params={})
|
|
24
|
+
|
|
25
|
+
def set_symbol(self, symbol):
|
|
26
|
+
if symbol:
|
|
27
|
+
self.add_query_param("symbol", symbol)
|
|
28
|
+
|
|
29
|
+
def set_category(self, category):
|
|
30
|
+
if category:
|
|
31
|
+
self.add_query_param("category", category)
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.core.request import ApiRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Get52WHLRequest(ApiRequest):
|
|
21
|
+
def __init__(self):
|
|
22
|
+
ApiRequest.__init__(self, "/openapi/market-data/screener/52whl", version='v2', method="GET",
|
|
23
|
+
query_params={})
|
|
24
|
+
|
|
25
|
+
def set_rank_type(self, rank_type):
|
|
26
|
+
if rank_type:
|
|
27
|
+
self.add_query_param("rank_type", rank_type)
|
|
28
|
+
|
|
29
|
+
def set_category(self, category):
|
|
30
|
+
if category:
|
|
31
|
+
self.add_query_param("category", category)
|
|
32
|
+
|
|
33
|
+
def set_sort_by(self, sort_by):
|
|
34
|
+
if sort_by:
|
|
35
|
+
self.add_query_param("sort_by", sort_by)
|
|
36
|
+
|
|
37
|
+
def set_page_index(self, page_index):
|
|
38
|
+
if page_index:
|
|
39
|
+
self.add_query_param("page_index", page_index)
|
|
40
|
+
|
|
41
|
+
def set_page_size(self, page_size):
|
|
42
|
+
if page_size:
|
|
43
|
+
self.add_query_param("page_size", page_size)
|
|
44
|
+
|
|
45
|
+
def set_direction(self, direction):
|
|
46
|
+
if direction:
|
|
47
|
+
self.add_query_param("direction", direction)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.core.request import ApiRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class GetHighDividendRequest(ApiRequest):
|
|
21
|
+
def __init__(self):
|
|
22
|
+
ApiRequest.__init__(self, "/openapi/market-data/screener/high-dividend", version='v2', method="GET",
|
|
23
|
+
query_params={})
|
|
24
|
+
|
|
25
|
+
def set_category(self, category):
|
|
26
|
+
if category:
|
|
27
|
+
self.add_query_param("category", category)
|
|
28
|
+
|
|
29
|
+
def set_sort_by(self, sort_by):
|
|
30
|
+
if sort_by:
|
|
31
|
+
self.add_query_param("sort_by", sort_by)
|
|
32
|
+
|
|
33
|
+
def set_page_index(self, page_index):
|
|
34
|
+
if page_index:
|
|
35
|
+
self.add_query_param("page_index", page_index)
|
|
36
|
+
|
|
37
|
+
def set_page_size(self, page_size):
|
|
38
|
+
if page_size:
|
|
39
|
+
self.add_query_param("page_size", page_size)
|
|
40
|
+
|
|
41
|
+
def set_direction(self, direction):
|
|
42
|
+
if direction:
|
|
43
|
+
self.add_query_param("direction", direction)
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.core.request import ApiRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class GetMarketSectorsDetailRequest(ApiRequest):
|
|
21
|
+
def __init__(self):
|
|
22
|
+
ApiRequest.__init__(self, "/openapi/market-data/screener/market-sectors-detail", version='v2', method="GET",
|
|
23
|
+
query_params={})
|
|
24
|
+
|
|
25
|
+
def set_sector_id(self, sector_id):
|
|
26
|
+
if sector_id:
|
|
27
|
+
self.add_query_param("sector_id", sector_id)
|
|
28
|
+
|
|
29
|
+
def set_category(self, category):
|
|
30
|
+
if category:
|
|
31
|
+
self.add_query_param("category", category)
|
|
32
|
+
|
|
33
|
+
def set_period(self, period):
|
|
34
|
+
if period:
|
|
35
|
+
self.add_query_param("period", period)
|
|
36
|
+
|
|
37
|
+
def set_page_index(self, page_index):
|
|
38
|
+
if page_index:
|
|
39
|
+
self.add_query_param("page_index", page_index)
|
|
40
|
+
|
|
41
|
+
def set_page_size(self, page_size):
|
|
42
|
+
if page_size:
|
|
43
|
+
self.add_query_param("page_size", page_size)
|
|
44
|
+
|
|
45
|
+
def set_sort_by(self, sort_by):
|
|
46
|
+
if sort_by:
|
|
47
|
+
self.add_query_param("sort_by", sort_by)
|
|
48
|
+
|
|
49
|
+
def set_direction(self, direction):
|
|
50
|
+
if direction:
|
|
51
|
+
self.add_query_param("direction", direction)
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.core.request import ApiRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class GetMarketSectorsRequest(ApiRequest):
|
|
21
|
+
def __init__(self):
|
|
22
|
+
ApiRequest.__init__(self, "/openapi/market-data/screener/market-sectors", version='v2', method="GET",
|
|
23
|
+
query_params={})
|
|
24
|
+
|
|
25
|
+
def set_category(self, category):
|
|
26
|
+
if category:
|
|
27
|
+
self.add_query_param("category", category)
|
|
28
|
+
|
|
29
|
+
def set_agg_type(self, agg_type):
|
|
30
|
+
if agg_type:
|
|
31
|
+
self.add_query_param("agg_type", agg_type)
|
|
32
|
+
|
|
33
|
+
def set_period(self, period):
|
|
34
|
+
if period:
|
|
35
|
+
self.add_query_param("period", period)
|
|
36
|
+
|
|
37
|
+
def set_page_index(self, page_index):
|
|
38
|
+
if page_index:
|
|
39
|
+
self.add_query_param("page_index", page_index)
|
|
40
|
+
|
|
41
|
+
def set_page_size(self, page_size):
|
|
42
|
+
if page_size:
|
|
43
|
+
self.add_query_param("page_size", page_size)
|
|
44
|
+
|
|
45
|
+
def set_direction(self, direction):
|
|
46
|
+
if direction:
|
|
47
|
+
self.add_query_param("direction", direction)
|
webull/trade/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = '2.0.
|
|
1
|
+
__version__ = '2.0.13'
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
from webull.core.request import ApiRequest
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class GetActivitiesRequest(ApiRequest):
|
|
20
|
+
def __init__(self):
|
|
21
|
+
ApiRequest.__init__(self, "/openapi/trade/activities/cash", version='v2', method="GET", query_params={})
|
|
22
|
+
|
|
23
|
+
def set_account_id(self, account_id):
|
|
24
|
+
self.add_query_param("account_id", account_id)
|
|
25
|
+
|
|
26
|
+
def set_activity_types(self, activity_types):
|
|
27
|
+
self.add_query_param("activity_types", activity_types)
|
|
28
|
+
|
|
29
|
+
def set_start_time(self, start_time):
|
|
30
|
+
self.add_query_param("start_time", start_time)
|
|
31
|
+
|
|
32
|
+
def set_end_time(self, end_time):
|
|
33
|
+
self.add_query_param("end_time", end_time)
|
|
34
|
+
|
|
35
|
+
def set_last_activity_id(self, last_activity_id):
|
|
36
|
+
self.add_query_param("last_activity_id", last_activity_id)
|
|
37
|
+
|
|
38
|
+
def set_page_size(self, page_size):
|
|
39
|
+
self.add_query_param("page_size", page_size)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Copyright 2022 Webull
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
# coding=utf-8
|
|
16
|
+
|
|
17
|
+
from webull.trade.request.get_activities_request import GetActivitiesRequest
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Activity:
|
|
21
|
+
def __init__(self, api_client):
|
|
22
|
+
self.client = api_client
|
|
23
|
+
|
|
24
|
+
def get_activities(self, account_id, activity_types=None, start_time=None, end_time=None,
|
|
25
|
+
last_activity_id=None, page_size=10):
|
|
26
|
+
"""
|
|
27
|
+
Query cash activities by type with pagination support.
|
|
28
|
+
This interface is currently supported only for Webull US.
|
|
29
|
+
|
|
30
|
+
:param account_id: Account ID
|
|
31
|
+
:param activity_types: Activity types filter, comma-separated string (optional)
|
|
32
|
+
:param start_time: Start time filter (optional)
|
|
33
|
+
:param end_time: End time filter (optional)
|
|
34
|
+
:param last_activity_id: The last activity ID of the previous page for cursor-based pagination (optional)
|
|
35
|
+
:param page_size: Number of entries per page, default value is 10
|
|
36
|
+
"""
|
|
37
|
+
get_activities_request = GetActivitiesRequest()
|
|
38
|
+
get_activities_request.set_account_id(account_id)
|
|
39
|
+
if activity_types is not None:
|
|
40
|
+
get_activities_request.set_activity_types(activity_types)
|
|
41
|
+
if start_time is not None:
|
|
42
|
+
get_activities_request.set_start_time(start_time)
|
|
43
|
+
if end_time is not None:
|
|
44
|
+
get_activities_request.set_end_time(end_time)
|
|
45
|
+
if last_activity_id is not None:
|
|
46
|
+
get_activities_request.set_last_activity_id(last_activity_id)
|
|
47
|
+
get_activities_request.set_page_size(page_size)
|
|
48
|
+
response = self.client.get_response(get_activities_request)
|
|
49
|
+
return response
|
webull/trade/trade_client.py
CHANGED
|
@@ -16,6 +16,7 @@ import sys
|
|
|
16
16
|
|
|
17
17
|
from webull.core.http.initializer.client_initializer import ClientInitializer
|
|
18
18
|
from webull.trade.trade.account_info import Account
|
|
19
|
+
from webull.trade.trade.activity import Activity
|
|
19
20
|
from webull.trade.trade.order_operation import OrderOperation
|
|
20
21
|
from webull.trade.trade.trade_calendar import TradeCalendar
|
|
21
22
|
from webull.trade.trade.trade_instrument import TradeInstrument
|
|
@@ -33,6 +34,7 @@ class TradeClient:
|
|
|
33
34
|
self.order = OrderOperation(api_client)
|
|
34
35
|
self.order_v2 = OrderOperationV2(api_client)
|
|
35
36
|
self.order_v3 = OrderOperationV3(api_client)
|
|
37
|
+
self.activity = Activity(api_client)
|
|
36
38
|
self.trade_instrument = TradeInstrument(api_client)
|
|
37
39
|
self.trade_calendar = TradeCalendar(api_client)
|
|
38
40
|
|
{webull_openapi_python_sdk-2.0.11.dist-info → webull_openapi_python_sdk-2.0.13.dist-info}/RECORD
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
samples/__init__.py,sha256=
|
|
1
|
+
samples/__init__.py,sha256=F9oasgdSO040QuU150cChv-xopNDOmPbPvzmyDiEYjM,23
|
|
2
2
|
samples/account/__init__.py,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
|
|
3
3
|
samples/account/account_client.py,sha256=vwh-nI_JnjwcIeOr1sQPMzG8pAqZwliUusE49ZmYE3s,1796
|
|
4
4
|
samples/assets/__init__.py,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
|
|
5
5
|
samples/assets/assets_client.py,sha256=p9LS2Td3gbUMkHn4LD_9RMCFuaQRUbsKvG4PhZBGJDc,1974
|
|
6
6
|
samples/data/__init__.py,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
|
|
7
|
-
samples/data/data_client.py,sha256=
|
|
7
|
+
samples/data/data_client.py,sha256=amhccRnIlpP9QDb5yB8vtvWKQgqPbEigABfjlSWON2I,12411
|
|
8
8
|
samples/data/data_client_event.py,sha256=u6Bebo2hTE0Ri1bQHa8nhFEe-fBbdxfNwLpTZh3E1WY,3046
|
|
9
9
|
samples/data/data_streaming_client.py,sha256=2da21SE_Mneo7zbM_l1rkpdBBbI4avrpnSPMxsZIalw,4085
|
|
10
10
|
samples/data/data_streaming_client_async.py,sha256=o_u1ch8JdbcYnLCvDCCUzO-Z1IG7BUKncu_GB_kCbOs,4443
|
|
@@ -15,6 +15,7 @@ samples/order/order_stock_client.py,sha256=hYwVwVFVERk-YS7gRcW-LuGfAvcF8VJHZs1qw
|
|
|
15
15
|
samples/screener/__init__.py,sha256=68et0-FOloDo6Yo6vqmHPM45z-8zorzbhrZmUrLApEQ,583
|
|
16
16
|
samples/screener/screener_client.py,sha256=NGwjY7YaG_3l9c-QePpmpPG4Gtk_BZaM7-jQbMb2kzw,3636
|
|
17
17
|
samples/trade/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
+
samples/trade/activities_client.py,sha256=HOF0-T_-v9Am3Raob-iq2IM4PetfhQWbRw2rkMaufzk,2093
|
|
18
19
|
samples/trade/trade_client.py,sha256=LyWSvZJH4ByCkRORqP9WdkXfx65A2b6fhc9_GzL8DOM,6258
|
|
19
20
|
samples/trade/trade_client_v2.py,sha256=IO-zmRiUnCmIetTdiYunPh8jVK2VaPrOR77Dwvz1auY,10771
|
|
20
21
|
samples/trade/trade_client_v3.py,sha256=yAkVwWhZBGD929oMmlUj4GvJVWWZiV8PLlv_BeXbDZ8,32069
|
|
@@ -22,8 +23,8 @@ samples/trade/trade_client_v3_event.py,sha256=91HlT04KlK8Q5gUnsB8F5ErCFdJRnpDABK
|
|
|
22
23
|
samples/trade/trade_event_client.py,sha256=BWdD1L41LXmDlaig6ku9T3t3fSCCZEdj5nxH1xI1AZA,2653
|
|
23
24
|
samples/watchlist/__init__.py,sha256=rtV5s4_CJgDAT4DGEJa_pNLJU71Wdr5OLz_IQ1EajFQ,567
|
|
24
25
|
samples/watchlist/watchlist_client.py,sha256=lpzJs7SXuSka2KKkJ0u9s83A9iHta5qrjvIdkbfNcwg,3246
|
|
25
|
-
webull/__init__.py,sha256=
|
|
26
|
-
webull/core/__init__.py,sha256=
|
|
26
|
+
webull/__init__.py,sha256=F9oasgdSO040QuU150cChv-xopNDOmPbPvzmyDiEYjM,23
|
|
27
|
+
webull/core/__init__.py,sha256=Qhu2u_ECRyTmwLpFqEvg3uf4DNpsW3CQr6STtRrF6eo,226
|
|
27
28
|
webull/core/client.py,sha256=zxSBiII9KDxc5tHpTerJfV_PKPt8E9e3oTOpiakAtJw,16758
|
|
28
29
|
webull/core/compat.py,sha256=_r6Y_f3vTo_DoxOaCvLjnvOo1KRkD2Z9kXSh8OijEIA,3088
|
|
29
30
|
webull/core/headers.py,sha256=Wj2zev1XYyYsy2b9YKnoK3GqjVsXZO_o2WziMmuVBTw,2061
|
|
@@ -89,8 +90,8 @@ webull/core/utils/common.py,sha256=T5VVcYQVhA9fhiUHZN9gBuoh0uzVgbCM01o1qK08NAE,2
|
|
|
89
90
|
webull/core/utils/data.py,sha256=YUyoWY68_2RkKanh3jsDscgGx__FIPh5VNEGXr1Qotc,852
|
|
90
91
|
webull/core/utils/desensitize.py,sha256=f8_ps9BrG3WfXD8ZAw873-_YoGeke1Q55CeDwRmYkqA,1104
|
|
91
92
|
webull/core/utils/validation.py,sha256=gJcIrHYtgo48yVJ0q6O-f5buTYWOcr6ShhDIBhTp-Yg,1957
|
|
92
|
-
webull/data/__init__.py,sha256=
|
|
93
|
-
webull/data/data_client.py,sha256=
|
|
93
|
+
webull/data/__init__.py,sha256=A1ewcdVQ2-bAKc0T1HpPB3BsNC-a_6o-DRL8CcYULZE,39
|
|
94
|
+
webull/data/data_client.py,sha256=FzatKHXgu5xv-FKFaX-mFYdhLTdz7zpRUox9AGWrReQ,2429
|
|
94
95
|
webull/data/data_streaming_client.py,sha256=TQBAilvOLCbcMqacByrniXGr9VjSwjym-4-LUOiqKx8,4456
|
|
95
96
|
webull/data/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
97
|
webull/data/common/category.py,sha256=8mtq9J9aiNan1CkwgfqRnggdH0tENyhJBJ2HI3EkUHE,978
|
|
@@ -114,12 +115,13 @@ webull/data/internal/quotes_topic.py,sha256=kG4RZTjj01U0e54qoOrJHlLrPeBzXekySasm
|
|
|
114
115
|
webull/data/quotes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
115
116
|
webull/data/quotes/crypto_market_data.py,sha256=UQlxUz0GntvwcRS-Vh_h7cXbhQ045MqPlG5AhWUoQI4,3063
|
|
116
117
|
webull/data/quotes/event_market_data.py,sha256=lARSHqnVxRZZNOIi9uP-Rs5StMIUWtmwrw-p8droqtc,4650
|
|
118
|
+
webull/data/quotes/fundamentals.py,sha256=Dod6lcTwPDvyOjFQxDwW6GrIoDAknIGZOL1M9VRRdX4,14597
|
|
117
119
|
webull/data/quotes/futures_market_data.py,sha256=fc9giYNy1LcdLHOJV31zMbPBKtWDH8kBW5xRFgHzQUA,5596
|
|
118
120
|
webull/data/quotes/instrument.py,sha256=BHQ4INg3ct2b0E22E6IHMtYz47q8hA3HIf1wzbw6Ns4,12665
|
|
119
121
|
webull/data/quotes/market_data.py,sha256=L7f5V5tmG01lev9-IJU3w6up7EnX42WfI7GtW2mEcw8,14748
|
|
120
122
|
webull/data/quotes/market_streaming_data.py,sha256=cI9xxGpKV_KDS8cgh9azHifBji0yeSuKmH7Jxaqij38,3139
|
|
121
123
|
webull/data/quotes/option_market_data.py,sha256=4fW_GI3u1T-5dluhLRQ60Gbb2bsnhWkSrILYJq-96pw,3305
|
|
122
|
-
webull/data/quotes/screener.py,sha256=
|
|
124
|
+
webull/data/quotes/screener.py,sha256=h73YyhW6jBkJH1NvDOceR5lePRXGgtiWrLKQwbn9pAU,9831
|
|
123
125
|
webull/data/quotes/watchlist.py,sha256=RkuPV7OwC6e4NEpeldTUNWEsYAqGQbVqyOHs9edMuhE,6344
|
|
124
126
|
webull/data/quotes/subscribe/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
125
127
|
webull/data/quotes/subscribe/ask_bid_result.py,sha256=J6Ms_01a44IvzNcw9krwMM0CuA_-zh-5eBGqx2kQbv4,1759
|
|
@@ -144,11 +146,14 @@ webull/data/request/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
|
|
|
144
146
|
webull/data/request/get_analyst_rating_request.py,sha256=NUkEiWo7xZu9uRsve2RMWyNRxAiLQssDi73YS8qkH8M,1216
|
|
145
147
|
webull/data/request/get_analyst_target_price_request.py,sha256=QQZ5XlkGFaGsC5TSlrXiCDrsTpy8GxADxIFdfUvNYwE,1227
|
|
146
148
|
webull/data/request/get_batch_historical_bars_request.py,sha256=2VUAzZPyZVZ-PBrhQCbzqYw2nnrwpgdoLSia5CroQAw,2209
|
|
149
|
+
webull/data/request/get_capital_flow_request.py,sha256=twq5fwvUrKJ-fgJz6FTtsq2tKJTtsM0CZ41x9x8c5yg,1164
|
|
147
150
|
webull/data/request/get_company_profile_request.py,sha256=oTh3735vgeslPGdXhuwC7qNe4KRJollOXzJcOUtAW0Q,1218
|
|
148
151
|
webull/data/request/get_corp_action_request.py,sha256=6Ssnn0bZNQfFBt8Asl2DzHMBaXEOA2CZHUWGdA87Uik,1851
|
|
149
152
|
webull/data/request/get_crypto_historical_bars_request.py,sha256=FKIp2hB2fPbkMLxHJ3cFrGlLCd4K9zuhNuyBwBeb5SM,1476
|
|
150
153
|
webull/data/request/get_crypto_instruments_request.py,sha256=GwOA9oPBH4qNg7yR-lVjrRSGZDF5zfRUBS4PegKLcjk,1549
|
|
151
154
|
webull/data/request/get_crypto_snapshot_request.py,sha256=W-z9nuBu2RaXqy07zFVHMQs9GP5Hc55vOWWYKoibWVA,1136
|
|
155
|
+
webull/data/request/get_dividend_calendar_request.py,sha256=9rPRlmn1Rq1qdfOOe_HgYUsqx64UZWzmIKQmHllMx5Q,1074
|
|
156
|
+
webull/data/request/get_earnings_calendar_request.py,sha256=WB13hKNO-S3wCI9XH0sfuHhtK_4CsDW62a3ZgUow9no,1074
|
|
152
157
|
webull/data/request/get_eod_bars_request.py,sha256=CwbyXeAE-iPKu43zNxcekSw5qOlfEwZsztFxCQvAXuQ,1234
|
|
153
158
|
webull/data/request/get_event_bars_request.py,sha256=fsZkmPQoUIhRZnWr7CUR2PZl9f7ciNdO2i8t8xotDYU,1505
|
|
154
159
|
webull/data/request/get_event_depth_request.py,sha256=g0WzBAc7ab8TdYFJ1EWs9KxOvkrXcvuQrDSS-hNrOkQ,1079
|
|
@@ -158,7 +163,22 @@ webull/data/request/get_event_series_categories.py,sha256=Q-ZDjSPYHIdtnE-qtXowUw
|
|
|
158
163
|
webull/data/request/get_event_series_request.py,sha256=tuhG-EyXTqA6HiDslVGr9r96IEvop4zbxDjHg1tWt8g,1344
|
|
159
164
|
webull/data/request/get_event_snapshot_request.py,sha256=rQzdZWQ7eFohYMYmWaZInmdpyNi6rR5KhxgDOPlr_Wc,1133
|
|
160
165
|
webull/data/request/get_event_tick_request.py,sha256=DCoj_arn2L6KQLnolAXmBsrUAQwEdwD8wBRssdq4AEA,1077
|
|
166
|
+
webull/data/request/get_financials_alert_request.py,sha256=xliiZamL9OxBC93Vdm73b7GH32UBSQGXplEdqsv0o10,1065
|
|
167
|
+
webull/data/request/get_financials_balance_sheet_request.py,sha256=9jl6UvwXnO6yfJr0TAv6E3PovyztXsuAMX2Zv2lW_iM,1275
|
|
168
|
+
webull/data/request/get_financials_cashflow_request.py,sha256=MhwzvtVW40yhk2YMbkpFVypNMK-RwDSHlmrdKq_qFYY,1267
|
|
169
|
+
webull/data/request/get_financials_income_request.py,sha256=B2l3e8bmWTGwP0u-UejHBJRi9nH4L4-SZgSbUNpj9Jo,1262
|
|
170
|
+
webull/data/request/get_financials_indicators_request.py,sha256=gTJ-N8XBKkZfKrc_Zo2Mdy2GP8viGU7ppAUVVdl_Gyc,1270
|
|
161
171
|
webull/data/request/get_footprint_request.py,sha256=MnbKhhe7QMkKqyTxmXl-ztDl5l_3kkFhT1vtql82K3Y,1664
|
|
172
|
+
webull/data/request/get_forecast_eps_request.py,sha256=xz3-uOgM5ZXT0O8N9EG4OVbxl5-w-Xabys0kx54b6Xw,1064
|
|
173
|
+
webull/data/request/get_fund_allocation_request.py,sha256=iJ4PcZCmsJ_qqD2qKfmr6WA1l11onBzRhHaSWvCiB9k,1064
|
|
174
|
+
webull/data/request/get_fund_brief_request.py,sha256=KjFzq5LtU5RKFtRxhH4-aE0rbtFWrUUodJNs6IYAaqw,1054
|
|
175
|
+
webull/data/request/get_fund_dividends_request.py,sha256=3Wbzz4mHb9E0XaXd_RGLt7y0QR7sxga5uC6xFZL_shs,1307
|
|
176
|
+
webull/data/request/get_fund_files_request.py,sha256=Fq3RjAKlm-R-KCOjdKrz4LGzQPZVKxzH-R4PoiwljDo,1054
|
|
177
|
+
webull/data/request/get_fund_holdings_request.py,sha256=XiHv6cNQ_reyO_x4BvWPJEGF_vVYl7RLEp9z3l2qogk,1060
|
|
178
|
+
webull/data/request/get_fund_net_value_request.py,sha256=KXkHJlmETNT3mdMYRlidcR6XAtinjHc7Qvo3miPH7WA,1281
|
|
179
|
+
webull/data/request/get_fund_performance_request.py,sha256=ZUXgPJdwmB0AHaRBuAcxNzyT0IWGvuNRJeuz-ckhqDw,1066
|
|
180
|
+
webull/data/request/get_fund_rating_request.py,sha256=ImiTOcy184DXPRSypV8NGbjwqQekmbrgrmwI-2ZI_4U,1056
|
|
181
|
+
webull/data/request/get_fund_splits_request.py,sha256=plyqtCnpqfBAZV3wyYITizrQLA4y9BCbDB4T_ToIt5o,1056
|
|
162
182
|
webull/data/request/get_futures_depth_request.py,sha256=d6Tl-75pcJlvX6-beAdko15o8hDhdB-486uxH8AeGIk,1083
|
|
163
183
|
webull/data/request/get_futures_footprint_request.py,sha256=I0l-SlXBKqY61Oxq1zn1EWwLY79euuEoUcrvCzPJlA8,1673
|
|
164
184
|
webull/data/request/get_futures_historical_bars_request.py,sha256=QwvJq33wkJ-_KLZutkh3Z55gQyCDTRkCPwc9UyYcvKU,1330
|
|
@@ -169,6 +189,7 @@ webull/data/request/get_futures_products_request.py,sha256=jPl7ty1-fACSZEH_qFfAs
|
|
|
169
189
|
webull/data/request/get_futures_snapshot_request.py,sha256=wV9xm4RwKavdIF93c1llDk0WY4_VAkbeyllIzzw47So,1137
|
|
170
190
|
webull/data/request/get_futures_tick_request.py,sha256=ZFbwTGGjoGr02k-QHhD-3RmrtBuR7LyzEQf0a22RENE,1059
|
|
171
191
|
webull/data/request/get_historical_bars_request.py,sha256=xClCvnUyzfj9DeCxxOGzs0yJ6S9ZCHaxE3PMqaAbh2o,2199
|
|
192
|
+
webull/data/request/get_industry_comparison_request.py,sha256=BIrwWXQQNizxgDGKhT8VFtAhGS8kUiy3Mw-11U5ETAU,1188
|
|
172
193
|
webull/data/request/get_instruments_request.py,sha256=PmDXrv9hUTHNtwppjV6GMQqTcNPFFVG_LAbW2Ub4cvw,1520
|
|
173
194
|
webull/data/request/get_noii_bars_request.py,sha256=_ubNykIQCCDg9cRgeR49FVloF21s2REWlp_KTnUlYEg,1845
|
|
174
195
|
webull/data/request/get_noii_snapshot_request.py,sha256=IQ2HrAyyO2GzC8HEsjz4S0Owc0Zk25d-1ULjTqThmZU,2057
|
|
@@ -176,12 +197,17 @@ webull/data/request/get_option_bars_request.py,sha256=ObE4blYHZ_OcKG8Cp6St7ujDTI
|
|
|
176
197
|
webull/data/request/get_option_snapshot_request.py,sha256=XHmtHKN8fF6-rIWfstFr_bLFtgEIx-u61H6Y7WnOrlE,1816
|
|
177
198
|
webull/data/request/get_option_tick_request.py,sha256=MuSFYnM8m1UwOJ2NjzhOJYlWhbYDyiqPbNkKoPQUupI,1648
|
|
178
199
|
webull/data/request/get_quotes_request.py,sha256=g4J7lAQZBqoeM67Xm2E-Y2pwNxsqkrECf_r5DTTrS5M,1244
|
|
200
|
+
webull/data/request/get_sec_filings_request.py,sha256=RKPwThgPB5nx8UftP21wrWNur_K5LpJNMqChLLCwQdI,1058
|
|
179
201
|
webull/data/request/get_snapshot_request.py,sha256=OD2PiaxmBCboFDaU8DFTwvfNd2zObYSnPfl1fa49DIs,1471
|
|
180
202
|
webull/data/request/get_tick_request.py,sha256=rUHhQgC8Z_6ensLyCkg3DDK55SlEi0Bc_dhpCIIspDs,1366
|
|
181
203
|
webull/data/request/subscribe_request.py,sha256=2OPi0ssYvACTfCag8nb7EoyQJb-iGXZojUhopS80sLQ,1507
|
|
182
204
|
webull/data/request/unsubscribe_request.py,sha256=GTfPNk-b11OcHIK8zzTv9gM_8ABD2JDAiPPkPyfgy30,1482
|
|
183
205
|
webull/data/request/screener/__init__.py,sha256=68et0-FOloDo6Yo6vqmHPM45z-8zorzbhrZmUrLApEQ,583
|
|
206
|
+
webull/data/request/screener/get_52whl_request.py,sha256=rtydYR4LGPT2tj-vqs84HNHiQIqEZAeM9ZkUqBl8LiE,1543
|
|
184
207
|
webull/data/request/screener/get_gainers_losers_request.py,sha256=uXqTzbx1kkkuhFefyIBuO1JAsDyXtycTwTnmwc9EPxE,3733
|
|
208
|
+
webull/data/request/screener/get_high_dividend_request.py,sha256=-JZWLMOk_H7kjEKy1Tlnv66A94RTqOS6LqlQ5OXqPb4,1438
|
|
209
|
+
webull/data/request/screener/get_market_sectors_detail_request.py,sha256=ArgFD2Pqloc5i2ePXVLDvojYKvNTlztAYiD45iNWR_s,1678
|
|
210
|
+
webull/data/request/screener/get_market_sectors_request.py,sha256=xW78pN6_VVUil8KDLP3yccFdKRkuv2hID8xkeAQI6_k,1550
|
|
185
211
|
webull/data/request/screener/get_most_active_request.py,sha256=64NC3VR50-H1YXCqOkkYo7DPu7qSkPSUh8ZI7av-zGw,3793
|
|
186
212
|
webull/data/request/watchlist/__init__.py,sha256=rtV5s4_CJgDAT4DGEJa_pNLJU71Wdr5OLz_IQ1EajFQ,567
|
|
187
213
|
webull/data/request/watchlist/add_watchlist_instruments_request.py,sha256=6q6u1Y4cfjTUujugC9EZJiFMOLfv_-SEDD_u5cu8yTE,1488
|
|
@@ -192,8 +218,8 @@ webull/data/request/watchlist/get_watchlist_request.py,sha256=XxzS4gxFbdQSajpFSm
|
|
|
192
218
|
webull/data/request/watchlist/remove_watchlist_instruments_request.py,sha256=qOtQYDBp-PSawAgljnLmtfUce8dAblWI_zB0nnIv3G0,1451
|
|
193
219
|
webull/data/request/watchlist/update_watchlist_instruments_request.py,sha256=KoihfB8MszsAooQGUUMjFmnid_a7xk4YSdEMDO1gh-k,1493
|
|
194
220
|
webull/data/request/watchlist/update_watchlist_request.py,sha256=0s3ftkxiz9hjtXhLORrIUphyDIldRA8pJ4mP5zfbsyU,1466
|
|
195
|
-
webull/trade/__init__.py,sha256=
|
|
196
|
-
webull/trade/trade_client.py,sha256=
|
|
221
|
+
webull/trade/__init__.py,sha256=ETOzoBNhLSJycFTTlQ9F3NIdUYtPhNYYTm7erVExyfg,22
|
|
222
|
+
webull/trade/trade_client.py,sha256=ck8yRjm-aibv8LGOP0Gk5zg6bv4-bTVjULFpZlCAK2c,2278
|
|
197
223
|
webull/trade/trade_events_client.py,sha256=G9ovuxrnQh8iA1so2Ar-41jWRzDCYQYSHTkQLGlwhhA,9983
|
|
198
224
|
webull/trade/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
199
225
|
webull/trade/common/account_type.py,sha256=haVAB33MERN6XyPsbrfVQhK9_CpU90VltI6_KDkxzlE,715
|
|
@@ -224,6 +250,7 @@ webull/trade/request/cancel_order_request.py,sha256=JbyeVNOVu9xvwzba7Ntw2Sh4BrNV
|
|
|
224
250
|
webull/trade/request/get_account_balance_request.py,sha256=S9M1rz6HFlIwRpWfkQKVfRo996_DWF8Qe6bGirSnkV0,1042
|
|
225
251
|
webull/trade/request/get_account_positions_request.py,sha256=Nr7fyzsZfcCqQlyapu7KagZEagM60IG7PFU9Qempv9w,1117
|
|
226
252
|
webull/trade/request/get_account_profile_request.py,sha256=SgF-eDkL6XM3IC-I-Mqmi8lFrTPa0iM4CkTjkZwZx_U,899
|
|
253
|
+
webull/trade/request/get_activities_request.py,sha256=yp8ZiUM0mKyiIeBgBJHiokUSoF6zwAuqKdy0QnAtqa8,1421
|
|
227
254
|
webull/trade/request/get_app_subscriptions.py,sha256=ViITk9Tt164LceijAq0harcO_5eoTRyCDnFsvr-ZJ4Y,962
|
|
228
255
|
webull/trade/request/get_open_orders_request.py,sha256=USAN2LKVtJ0CK-lJlLQ8ihhM5M78du5rYoD2lMAV85g,1129
|
|
229
256
|
webull/trade/request/get_order_detail_request.py,sha256=X42LnDBBh1shJ5DFB31ukgS8u1l-JM-Z2kumJnbutfw,1008
|
|
@@ -266,6 +293,7 @@ webull/trade/request/v3/preview_order_request.py,sha256=ZgzwrlAed8IJ8ORDRjJ7rIuF
|
|
|
266
293
|
webull/trade/request/v3/replace_order_request.py,sha256=Xsa-vKGTMAwv-dJuSm8cx8rHVoFhk-cFjnHOpsUaZwM,1212
|
|
267
294
|
webull/trade/trade/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
268
295
|
webull/trade/trade/account_info.py,sha256=C3YcBDZfYOe5QSJEbysblye-W90RbQ7xNing5gLsIng,3622
|
|
296
|
+
webull/trade/trade/activity.py,sha256=pyvsJcMhyKoKdxurJPgXexsoUy6EefwKneqqSJpdA0U,2154
|
|
269
297
|
webull/trade/trade/order_operation.py,sha256=QrL4Da87RTOSupiAbuXtZigo9602Byp14DQGyR99hkI,12849
|
|
270
298
|
webull/trade/trade/trade_calendar.py,sha256=rGSiR5GZggQnZOmmpbC-06trgPQgFTvdpUzGMpw2ycw,1415
|
|
271
299
|
webull/trade/trade/trade_instrument.py,sha256=293IaiLnhw0mAc1IuF3LSgwgve_XZ1Dyf1VeFtmClc8,3474
|
|
@@ -274,9 +302,9 @@ webull/trade/trade/v2/account_info_v2.py,sha256=fs2-XaxklItuhaspzPkthXA5SgbnIffL
|
|
|
274
302
|
webull/trade/trade/v2/order_operation_v2.py,sha256=m54RH2j45CBBWEnqe4KxrsltAF44XKtPMT4kv8t7djQ,12745
|
|
275
303
|
webull/trade/trade/v3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
276
304
|
webull/trade/trade/v3/order_opration_v3.py,sha256=NsInXC5sPCW8y55jU71BnR0sQYhtWclqCmyK7V09MLc,8275
|
|
277
|
-
webull_openapi_python_sdk-2.0.
|
|
278
|
-
webull_openapi_python_sdk-2.0.
|
|
279
|
-
webull_openapi_python_sdk-2.0.
|
|
280
|
-
webull_openapi_python_sdk-2.0.
|
|
281
|
-
webull_openapi_python_sdk-2.0.
|
|
282
|
-
webull_openapi_python_sdk-2.0.
|
|
305
|
+
webull_openapi_python_sdk-2.0.13.dist-info/licenses/LICENSE,sha256=ALOnsLtb1aHxmDJg3-oMi0BO-i-cjfyZaOBfnnavKMc,11359
|
|
306
|
+
webull_openapi_python_sdk-2.0.13.dist-info/licenses/NOTICE,sha256=X5TApte6CPV10b96Cb70IRLusXmiRmK_R-dB-1tQM_I,2018
|
|
307
|
+
webull_openapi_python_sdk-2.0.13.dist-info/METADATA,sha256=ax-GvRxzowuykj36heNhXVhnd8J9ttaF6Hg6lZmqj6M,1033
|
|
308
|
+
webull_openapi_python_sdk-2.0.13.dist-info/WHEEL,sha256=K260EYznzXsJYBQGqmI8VTxEdiZYNvDZwW9cBh9-_MA,91
|
|
309
|
+
webull_openapi_python_sdk-2.0.13.dist-info/top_level.txt,sha256=h8pEjNDGWS2ZUZ2vYFpUShoMQT0ZRIQaD57QJWD8_aI,15
|
|
310
|
+
webull_openapi_python_sdk-2.0.13.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|