全部
文章&策略
学习干货
问答
官方
用户头像mx_*179b1n
2025-09-15 发布
1
浏览7
评论0
收藏0

webhook推送消息无法接送

用户头像xsn**19
2025-09-15 发布
设置好了,但是一直无法接受到信息,有朋友知道这是什么原因吗
浏览20
评论1
收藏0

十年收益高达2247.22%的中证1000选股策略内含策略代码

用户头像Wind2dRain
2025-06-29 发布
回测日期:2014-12-5 至 2025-05-31 选股策略: 选取中证1000指数中的1000只股票 当日涨跌幅 3-5 当日换手率 3-10 当日均线 MA5 > MA10 止损止盈条件 收益 > 5 或者 收益-3卖出 # 中证1000选股策略 # 作者 但盼风雨来 # 选股策略: # 当日涨跌幅 3-5 # 当日换手率 3-10 # 当日均线 MA5 > MA10 # 止损止盈条件 收益 > 5 或者 收益-3卖出 import pandas as pd # 初始化函数,全局只运行一次 def init(context): # 设置基准收益:沪深300指数 set_benchmark('000300.SH') # 打印日志 log.info('策略开始运行,初始化函数全局只运行一次') # 设置股票每笔交易的手续费为万分之二(手续费在买卖成交后扣除,不包括税费,税费在卖出成交后扣除) set_commission(PerShare(type='stock',cost=0.0000854,min_trade_cost=0)) # 设置股票交易双边滑点0.5%,表示买入价为实际价格乘1.0025,卖出价为实际价格乘0.9975 set_slippage(PriceSlippage(0.005)) # 设置日级最大成交比例25%,分钟级最大成交比例50% # 日频运行时,下单数量超过当天真实成交量25%,则全部不成交 # 分钟频运行时,下单数量超过当前分钟真实成交量50%,则全部不成交 set_volume_limit(0.25,0.5) # 设置要操作的股票:同花顺 context.security = ['300033.SZ'] # 回测区间、初始资金、运行频率请在右上方设置 context.stock_list = ['300033.SZ','000718.SZ'] run_daily(function) #每日开盘前9:00被调用一次,用于储存自定义参数、全局变量,执行盘前选股等 def before_trading(context): # 获取日期 date = get_datetime().strftime('%Y-%m-%d %H:%M:%S') # 打印日期 log.info('{} 盘前运行'.format(date)) ## 开盘时运行函数 def handle_bar(context, bar_dict): # 获取时间 time = get_datetime().strftime('%Y-%m-%d %H:%M:%S') log.info(bar_dict) # 买卖策略 positions = context.stock_account.positions to_sell = [] for position in positions: shouyi = positions[position].profit_rate * 100 # log.info(f"{positions[position].symbol}的收益率为{shouyi}%") stock = positions[position].symbol if shouyi > 6 or shouyi <-3: to_sell.append(stock) for stock in to_sell: order_target(stock,0) log.warn(f"已清仓了{stock}") # 打印时间 log.info('{} 盘中运行'.format(time)) stock_list = context.stock_list log.info("下单的股票为",str(stock_list)) for stock in stock_list: price = get_current(stock) current_price = price[stock].open # log.info(f"股票代码{stock},价格{current_price}") order(stock,1000,price = current_price) date = get_datetime() # log.info('{} 运行'.format(date)) log.info(f"已购买{stock},价格为{current_price}") ## 收盘后运行函数,用于储存自定义参数、全局变量,执行盘后选股等 def after_trading(context): # 获取时间 time = get_datetime().strftime('%Y-%m-%d %H:%M:%S') # 打印时间 log.info('{} 盘后运行'.format(time)) log.info('一天结束') def function(context,*args): get_all_stock(context) get_rate_stock(context) change_hand(context) avg_stock(context) # 获取所有股票 def get_all_stock(context): # 获取时间 time = get_datetime() # 获取市场所有股票 # all_stock = get_all_securities(ty='stock', date=time) # df = all_stock # df = df[~df['display_name'].str.contains('ST', na=False)] # df = df[~df['order_book_id'].str.contains('BJ')] # stock_list = df['order_book_id'].tolist() # 获取中证1000 stock_list= get_index_stocks('000852.SH',time) log.info("已获取到所有股票代码") context.stock_list = stock_list log.info(f"中证1000股票数量为{len(stock_list)}") log.info("已获取中证1000股票") # 筛选符合涨幅条件的股票 def get_rate_stock(context): time = get_datetime().strftime('%Y-%m-%d') stock_list = context.stock_list null_list = [] fields = ['quote_rate','open'] current = get_price( stock_list, start_date=None, end_date=time, fre_step='1d', fields=fields, skip_paused=False, fq='pre', bar_count=1, is_panel=False, ) for stock in stock_list: if (current[stock].quote_rate[0] > 3) & (current[stock].quote_rate[0] < 5): null_list.append(stock) context.stock_list = null_list log.info(f"符合涨跌幅限制的股票数量为{len(null_list)}") log.info("执行筛选符合涨幅条件的股票") # 筛选符合换手率的股票 def change_hand(context): current_stock = context.stock_list hand_list = [] time = get_datetime().strftime('%Y%m%d') fields = ['turnover_rate'] change_hand = get_price( current_stock, start_date=None, end_date=time, fre_step='1d', fields=fields, skip_paused=False, fq='pre', bar_count=1, is_panel=False, ) for stock in current_stock: if (float(change_hand[stock]['turnover_rate'])>3)&(float(change_hand[stock]['turnover_rate'])<10): hand_list.append(stock) context.stock_list = hand_list log.info(f"符合换手率的股票数量为{len(hand_list)}") log.info("执行筛选符合换手率的股票") # 筛选符合均线的股票 def avg_stock(context): time = get_datetime().strftime('%Y%m%d') stock_list = context.stock_list avg_list = [] price = get_price( stock_list, start_date=None, end_date=time, fre_step='1d', fields=['close'], skip_paused=False, fq='pre', bar_count=20, is_panel=False, ) for stock in stock_list: MA5 = price[stock]['close'].iloc[-5:].mean() MA10 = price[stock]['close'].iloc[-10:].mean() if MA5 > MA10 : avg_list.append(stock) context.stock_list = avg_list log.info(f"符合均线策略的股票数量为{len(avg_list)}") log.info("执行筛选符合均线的股票")
浏览1438
评论21
收藏15

精华 长期有效,公开征集意见反馈。

用户头像量化官方小助理
2023-03-09 发布
请大家不要客气,任何意见建议可以在这里评论提出。 被采纳后我们将奖励1G研究环境内存 3个月。
浏览15342
评论127
收藏6
用户头像alan_bit
2025-07-15 发布
你是否在Supermind社区有过这样的经历?—— ✔ 灵光一现的策略想法,却卡在代码实现上? ✔ 回测数据一团糟,不知道策略是否真的有效? ✔ 想验证市场规律,但缺乏技术工具支持? 现在,我可以帮你解决这些问题! 我的服务: 🔹 策略定制开发:你提供交易逻辑(比如均线交叉、动量因子、套利模型等),我负责用Python实现,交付完整代码。 🔹 专业回测验证:基于历史数据的多维度测试(胜率、夏普比率、最大回撤等),用数据告诉你策略的可行性。 🔹 快速迭代优化:根据回测结果调整参数,帮你打磨策略细节。 为什么选择我? ✅ Supermind老手:熟悉社区高频讨论的策略类型(CTA、统计套利、舆情分析等)。 ✅ 代码透明:无黑箱,所有逻辑可追溯,附赠详细注释。 ✅ 性价比高:比专业量化团队更轻量灵活,适合个人或小资金试水。 合作模式: 私信我简述策略思路(比如:“想用高股息小市值做中期投资”,“想验证MA10超短线,尾盘进早盘出胜率”)。 评估后定价(通常按策略复杂度收费)。 交付代码+回测报告,支持后续微调。 案例参考: ▸ “想用高股息小市值做中期投资”策略,回测显示2025年化收益82.42%,胜率62.22%。
浏览575
评论6
收藏2

Tushare停止服务的替代方案

用户头像mo_***794pfp
2025-08-19 发布
最近Tushare服务宕机在群里吵开了。 用过,但Tushare提供的数据太基础,没一点价值——实盘7年了,所有数据的坑都踩过。用基础数据做量化是没有前途的。数据源太基础,赢不了大多数人。实盘在用的方案,付费星球里已经发过了。 要想不出交易事故,让策略多积累些实盘数据,就要多找几家数据源互为备用。服务商不修复,但你的实盘不能停。这些数据是无用的: Tushare数据项 上面这些数据都是公开数据,你有我有大家有。好好构思一下:这些数据能为你产生什么有价值的策略? 一个合理的服务结构划分方案: 服务划分结构 多去找找数据源,免费才是最贵的。看看自己每年给券商交的手续费和印花税,每1w买入卖出一次,成本大概在¥20左右,一年下来交易成本都在几万,花个几千买个靠谱数据源,优化交易策略,是实打实的回本。 pypi.org 开源项目地址 原文
浏览190
评论1
收藏0

精华 同花顺SuperMind使用教程(汇总)

用户头像神盾局量子研究部
2023-05-11 发布
同花顺SuperMind使用教程 回测&模拟教程: 5行代码搞定多条件选股并微信实时收消息-保姆级教程 >点此查看< 5行代码搞定多条件选股并微信实时收消息-保姆级教程 实盘教程: 实盘交易、接口API的参考教程(账户信息、下单撤单、算法交易、融资融券)>点此查看< 实盘教程:典型使用场景教学(TICK/高频/交易接口)>点此查看< supermind教程-研究环境API文档 >点此查看< 从问财自然语言文具到实盘完整代码示例 >点此查看< 研究环境投研功能使用教程 >点此查看< Datafeed(tick数据、大单成交金额等使用教程)>点此查看< 系统的基础教程: B站UP主视频教程。>点此查看< 官方详细教学 >点此查看<
浏览47635
评论8
收藏168
用户头像森林626
2024-07-12 发布
# 获取当日涨停股,以代码形式保存到 def get_limit_ups(day=1): filtered_df = data[data["exchange"].isin(["深交所", "上交所"])] # 获取第一行的某个属性 row = filtered_df.iloc[0] display_name = row["display_name"] j = 0 limit_ups = [] for symbol, row in filtered_df.iterrows(): j += 1 value = get_price([symbol], None, '20240712', '1d', ['close', 'high', 'low', 'high_limit', 'is_st'], True, None, day, is_panel=0) close_value = value[symbol]['close'].iloc[0] high_limit_value = value[symbol]['high_limit'].iloc[0] is_st_value = value[symbol]['is_st'].iloc[0] if close_value == high_limit_value and not is_st_value: limit_ups.append(symbol) print(limit_ups)
浏览651
评论1
收藏6

实盘软件一直出问题

用户头像量化韭菜
2025-09-12 发布
实盘软件一直出问题,还有没有人管了
浏览71
评论2
收藏0
用户头像sh_***174w0d
2025-07-07 发布
当我们成功获得涨停板个股后,关键问题是:这只股票的强势能否延续?打板族每日追涨停,但抓到涨停板后该怎么操作? 通过长期在 [](https://www.9db.com/?t=10jqka_mm)9点半交割单学院 复盘分析高手们的实盘操作记录,我发现成功的打板高手都有着相似的判断逻辑。这正是投资者迫切需要掌握的技能——也就是我们常说的持续性预判。 十项核心研判标准 🎯 第一项:研判股价所处阶段 个股处于启动初期或上升中继阶段最为理想,此时正值价格拉升的黄金时期。若在这种位置出现涨停,后续上涨空间相对充足。 下图就是一个处于启动初期的例子 🔥 第二项:评估题材热度与持续性 部分个股仅是短暂蹭热点,次日虽能高开涨停,但热点缺乏延续性,随后便回归原点 若概念题材具备足够想象空间,则容易形成连续涨停走势 ⏰第三项:关注封板时间节点 涨停封板时间越早越佳,体现市场情绪高度一致,主力资金实力雄厚 若上午10点前封涨停,则后续3.5小时内主力需持续承接卖盘,这需要相当大的魄力 在9点半交割单学院分析的顶级高手交割单中,他们几乎只关注10点前封板个股,10点后封板的基本不予考虑 开盘就封盘 10:20封板 📊 第四项:分析成交量变化特征 初始拉涨停时,成交量应快速放大,显示资金大量涌入 涨停封板后成交量应尽可能萎缩,表明筹码高度锁定 💥 第五项:观察封板稳定程度 若封板后反复开板,即便尾盘重新封涨停,次日冲高概率也不大。当日都无法稳定封住,次日表现更不容乐观。 💰 第六项:衡量封单资金规模 道理简单明了,封单资金规模越大越好。如同购买商品,买家越多说明商品越抢手,股票同样如此。 📈 第七项:计算封成比数值 封成比即股票涨停收盘时封单量与成交量的比值,数值越高越优: 封成比 ≥ 10:表现极佳,次日涨停开盘概率超过70% 3 ≤ 封成比 < 10:次日高开幅度通常在6%-10%区间 1 ≤ 封成比 < 3:次日高开幅度多为3%-6%区间 0.5 ≤ 封成比 < 1:次日高开幅度约在1%-3%区间 封成比 < 0.5:次日开盘多围绕前收盘价,未必高开 📝 数据来源: 这些具体数据是通过分析9db.com平台上千份优秀交割单统计得出的经验数值,具有很强的实战参考价值! 许多投资者抱怨找不到封成比大于10的个股,实际上认真筛选必定能发现封成比超过10的标的! 塞力医疗 2025年7月3日10:45分封单比26.90%,下一交易日7月4日一字涨停封板,收货4连板 🎲 第八项:建立合理预期体系 对当日涨停个股建立预期框架,超出预期则买入,低于预期则卖出: 前日涨停类型 次日预期表现 前日一字涨停或开盘即封 预期高开5%以上 前日10点前封涨停 预期高开4%左右 前日11:30前封涨停 预期高开3%左右 前日下午封涨停 预期平开区间-2%~+2% 前日开板5次以上 预期低开-2%~0% 前日开板2-4次但10点前封板 预期高开3%左右 🚀 第九项:把握弱转强最佳时机 何时必须参与弱转强? 常言道"烂板出妖股",弱转强正是妖股诞生、龙头形成的必经路径。但并非所有弱转强都值得参与。 核心要诀: "冰点极致" 冰点极致来临前的弱转强多为陷阱 冰点极致过后,首个弱转强即使判断失误也要参与 首次亏损后,第二个弱转强可适当加仓推进 这本质上是周期性阶段效应的体现 📊 第十项:竞价成交量爆发标准 前日成交额 次日竞价量占比要求 低于2亿 最低10%-20% 2-5亿 10% 5-10亿 8%-10% 10-20亿 5%-8% 超过20亿 4% ⚠️ 重要提醒: 除关注竞价表现外,还需结合大盘环境、板块轮动等因素综合判断。 实战心得与学习建议 以上关于涨停后走势研判的方法论,来自十余年实战交易的深度总结,每一条都是在市场磨砺中用真金白银换来的宝贵经验。更重要的是,这些经验得到了 **9点半交割单学院 **平台上众多高手实盘数据的验证。 在9db.com上,你可以看到各路高手的真实交割单,他们的买卖点选择、持仓逻辑、风控策略都完全透明。通过复盘这些成功案例,我们能够更深刻地理解市场规律,提升自己的交易水平。 建议大家可以去9点半交割单学院看看那些成功交易者的实盘记录,学习他们是如何在实际操作中运用这些判断标准的。理论结合实践,才能真正掌握涨停板操作的精髓。 牢记操作规则:超预期果断进场,不及预期坚决离场。 免责声明:本文仅为学习交流用途,不构成任何投资建议。股市有风险,投资需谨慎。
浏览4061
评论4
收藏13