9个发布版本
0.1.8 | 2022年12月25日 |
---|---|
0.1.7 | 2022年12月23日 |
39 在 金融
每月下载 35次
565KB
1K SLoC
软件包codes-iso-10383
本软件包包含ISO 10383证券及相关金融工具 — 交易所和市场监管识别代码(MIC)规范的实现。
ISO 10383规定了识别交易所、交易平台、监管或非监管市场以及贸易报告设施作为价格和相关信息来源的通用方法,以促进自动化处理。
旨在用于任何应用程序和通信中的地点识别
- 金融工具上市的地方(官方上市地点),
- 相关交易执行的地方(交易地点),以及
- 报告交易详情的地方(贸易报告设施)。
注意,字段描述取自ISO 10383市场标识符代码 - 发布2.0事实表。
有关API设计的说明,请参阅仓库README。
示例
use codes_iso_10383::{Category, MarketIdCode, Status};
let market = MarketIdCode::XNCM;
assert_eq!(market.code(), "XNCM");
assert_eq!(market.operating_code(), Some(MarketIdCode::XNAS));
assert_eq!(market.is_segment(), true);
assert_eq!(market.status(), Status::Active);
assert_eq!(market.market_category_code(), Some(Category::NSPD));
assert_eq!(market.acronym(), None);
// feature = "real_url"
// assert_eq!(market.website_url(), Some(url::Url::from_str("http://www.nasdaq.com").unwrap()));
// or
// assert_eq!(market.website_url(), Some("http://www.nasdaq.com"));
// feature = "market_name"
// assert_eq!(market.market_name(), "NASDAQ CAPITAL MARKET");
// feature = "location"
// assert_eq!(market.country_code(), Some(CountryCode::US));
// assert_eq!(market.city(), Some("NEW YORK"));
// feature = "legal_entity"
// assert_eq!(market.legal_entity_name(), None);
// assert_eq!(market.legal_entity_id(), None);
// feature = "dates"
// assert_eq!(market.creation_date(), "2008-02-25");
// assert_eq!(market.last_update_date(), Some("2008-02-25"));
// assert_eq!(market.last_validation_date(), None);
// assert_eq!(market.expiration_date(), None);
// feature = "comments"
// assert_eq!(market.comments(), Some("..."));
以下演示了from_str_extended
,它通过from_str
没有直接MIC匹配时搜索缩略语值。
use codes_iso_10383::MarketIdCode;
use std::str::FromStr;
assert!(MarketIdCode::from_str("NASDAQ").is_err());
let market = MarketIdCode::from_str_extended("NASDAQ");
assert!(market.is_ok());
assert_eq!(market.unwrap().code(), "XNAS");
功能
默认情况下,仅启用serde
功能,无法排除MarketIdCode::code
和MarketIdCode::operating_code
,以及MarketIdCode::is_segment
方法。
serde
- 启用MarketIdCode
类型的序列化。market_name
- 添加MarketIdCode::market_name
方法。location
- 添加MarketIdCode::country_code
和MarketIdCode::city
方法。legal_entity
- 添加MarketIdCode::legal_entity_id
和MarketIdCode::legal_entity_name
方法。real_url - 使用
Url类型 从
urlcrate 用于
MarketIdCode::website_url` 方法。dates
- 添加了MarketIdCode::creation_date
、MarketIdCode::last_update_date
、MarketIdCode::last_validation_date
和MarketIdCode::expiration_date
方法。real_dates
- 使用DateTime<Utc>
类型从chrono
crate 中的日期函数 正在进行中comments
- 添加了MarketIdCode::comments
方法。
更改
版本 0.1.8
- 针对 codes-common 中的新
build
模块进行适配
版本 0.1.7
- 实现了
Standardized
和FixedLengthCode
特性。
版本 0.1.6
- 添加了新的
from_str_extended
方法。
版本 0.1.5
- 修复了
country_code
和website_url
的模板错误。
版本 0.1.4
- 添加了所有缺失的方法。
版本 0.1.3
- 使用新的
codes-common
CSV 处理框架。
版本 0.1.2
- 添加了
ALL_CODES
常量。
版本 0.1.1
- 基于更新的
codes-common
进行实现清理 - 使用新的
Code
特性和宏创建的实现。
版本 0.1.0
- 初始发布
待办事项
待定
依赖项
~0.4–3MB
~51K SLoC