Files
chanlun.rs/chanlun-py/chanlun/__init__.py
T
2026-06-27 18:17:57 +08:00

116 lines
2.6 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""缠论技术分析库 — Rust 高性能实现"""
__all__ = [
"K线",
"K线合成器",
"中枢",
"买卖点",
"买卖点类型",
"分型",
"分型结构",
"基础买卖点",
"平滑异同移动平均线",
"指标",
"指标容器",
"指标计算器",
"均线工具",
"相对强弱指数",
"相对方向",
"立体分析器",
"笔",
"线段",
"线段特征",
"缠论K线",
"缠论配置",
"缺口",
"背驰分析",
"虚线",
"观察者",
"转化为时间戳",
"转化为时间戳_数字",
"随机指标",
"布林带",
"get_分型模式",
"set_分型模式",
"get_扩展线段模式",
"set_扩展线段模式",
"get_log_level",
"set_log_level",
"get_rs_log_level",
"set_rs_log_level",
"K线相等",
"缠论K线相等",
"分型相等",
"缺口相等",
"线段特征相等",
"中枢相等",
"虚线相等",
]
from ._chanlun import *
from ._chanlun import set_log_level as _rs_set_log_level, get_log_level as _rs_get_log_level
import sys as _sys
from loguru import logger as _logger
# ---- Python 侧日志(loguru----
_级别映射 = {
"trace": "TRACE",
"debug": "DEBUG",
"info": "INFO",
"warn": "WARNING",
"error": "ERROR",
"off": "OFF",
}
_有效级别 = frozenset(_级别映射.keys())
_当前日志级别 = "info"
def set_log_level(level: str):
"""设置 Python 侧日志级别 (loguru)。
:param level: 日志级别,不区分大小写 (trace / debug / info / warn / error / off)
"""
global _当前日志级别
_level = level.lower()
if _level not in _有效级别:
raise ValueError(f"无效日志级别 '{level}',有效值: {', '.join(sorted(_有效级别))}")
_当前日志级别 = _level
_loguru_level = _级别映射[_level]
try:
_logger.remove(0)
except ValueError:
pass
if _loguru_level != "OFF":
_logger.add(_sys.stderr, level=_loguru_level)
def get_log_level() -> str:
"""获取 Python 侧当前日志级别。
:return: 日志级别字符串 (trace / debug / info / warn / error / off)
"""
return _当前日志级别
set_log_level("error")
# ---- Rust 侧日志(tracing----
def set_rs_log_level(level: str):
"""设置 Rust 侧日志级别 (trace / debug / info / warn / error / off)
仅控制 Rust tracing 日志,不影响 Python loguru 日志。
Python 侧日志通过 set_log_level() 独立控制。
"""
_rs_set_log_level(level)
def get_rs_log_level() -> str:
"""获取 Rust 侧日志级别"""
return _rs_get_log_level()