摩洛哥股市数据从哪找?itick Morocco Stock API Python对接教程
摩洛哥股票API、卡萨布兰卡证券交易所(Casablanca Stock Exchange)实时行情、摩洛哥历史K线——这是个典型的冷门但增长挺快的前沿市场,能提供数据接口的服务商屈指可数,itick算是少数能覆盖到这个市场的选择。摩洛哥电信(IAM)、金融巨头Attijariwafa Bank(ATW)是这个市场里比较有代表性的两只票,本文用itick的Python SDK做一个简洁的对接演示。

为什么关注摩洛哥市场
摩洛哥作为北非地区经济表现相对稳健的国家,卡萨布兰卡交易所近几年也吸引了不少前沿市场基金的目光。对于做全球多市场覆盖的资讯类或量化类产品来说,能不能拿到摩洛哥这类小众市场的数据,某种程度上也是产品覆盖广度的一个体现。
快速上手
安装SDK:
pip install itick-sdk
注册itick账号并获取token:
from itick.sdk import Client
token = "your_api_token"
client = Client(token)
获取实时报价
# 摩洛哥region代码是MA
# Maroc Telecom 摩洛哥电信
quote = client.get_stock_quote("MA", "IAM")
print("IAM实时报价:", quote)
# Attijariwafa Bank
quote_atw = client.get_stock_quote("MA", "ATW")
print("ATW实时报价:", quote_atw)
获取历史K线
# IAM 日K线,取最近50根
kline = client.get_stock_kline("MA", "IAM", 8, 50)
print("IAM历史K线:", kline)
kType参数:1=1分钟,2=5分钟,3=15分钟,4=30分钟,5=1小时,8=1天,9=1周,10=1月。返回结构包含o(开盘)、h(最高)、l(最低)、c(收盘)、v(成交量)、tu(成交额)、t(时间戳),这套字段跟itick覆盖的其他市场是完全一样的命名规则。
WebSocket实时订阅
import time
def on_message(msg):
print("行情推送:", msg)
def on_error(err):
print("连接错误:", err)
client.set_message_handler(on_message)
client.set_error_handler(on_error)
client.connect_stock_websocket()
client.send_websocket_message(
'{"ac":"subscribe","params":"IAM$MA,ATW$MA","types":"quote,tick"}'
)
time.sleep(20)
print("连接状态:", client.is_websocket_connected())
client.close_websocket()
需要提前知道的事
摩洛哥这类交易量相对较小的市场,非交易时段或者成交不活跃的股票,可能会出现推送频率较低的情况,这是市场本身流动性的问题,跟接口质量没有关系。如果你的产品需要展示"最后更新时间"这类信息,建议结合quote返回的t字段(最新成交时间戳)做展示,让用户清楚知道当前看到的数据是什么时候的,而不是误以为数据卡住了。
另外提醒一下,像摩洛哥、肯尼亚、尼日利亚、秘鲁这些相对小众的前沿市场,itick也都有支持,如果你的产品未来要扩展到非洲或者拉美其他国家,可以先去itick的产品列表接口确认一下具体标的的支持情况,一般不需要联系客服,直接查文档就能确认。
心跳与重连
SDK内置的心跳保活(30秒一次)和自动重连机制(5秒间隔,最多10次重试)在这类小众市场也同样适用,重连后订阅关系会自动恢复,不需要额外写重连代码。
小结
摩洛哥市场对接流程简单,region=MA加上正确的股票代码即可完成实时行情与历史K线的获取。对于想做全球前沿市场覆盖的产品来说,itick这种一套SDK打通30多个市场的方式,比逐个市场找当地数据源要省心得多。完整接口文档参见itick文档中心。

浙公网安备 33010602011771号