籌碼分布數(shù)據(jù)分析實戰(zhàn):用Python構(gòu)建主力建倉成本分析系統(tǒng)
籌碼分布數(shù)據(jù)分析實戰(zhàn)用Python構(gòu)建主力建倉成本分析系統(tǒng)籌碼分布是技術(shù)分析中一個很特別的指標(biāo)它試圖展示不同價格上的持倉量分布幫助投資者判斷主力的建倉成本和持倉變化。去年我用Python實現(xiàn)了一個籌碼分布計算系統(tǒng)通過歷史K線和逐筆成交數(shù)據(jù)還原主力的建倉過程。這篇文章分享系統(tǒng)的核心設(shè)計和代碼實現(xiàn)?;I碼分布的計算原理是換手率衰減模型——假設(shè)在某個價位成交的籌碼會隨著時間推移和換手率增加而逐漸被置換。每天的新成交籌碼會加到對應(yīng)的價格區(qū)間舊的籌碼按換手率比例衰減。本地數(shù)據(jù)引擎提供了計算籌碼分布所需的所有數(shù)據(jù)。歷史K線在time/history/trade/{dm}/day包含每日的開盤價、收盤價、最高價、最低價、成交量。逐筆成交數(shù)據(jù)在time/real/trace/onebyone/{dm}可以用來做更精確的籌碼分布計算。實時行情在time/real/{dm}包含換手率等指標(biāo)。importjsonimportosimportpandasaspdimportnumpyasnpfromdatetimeimportdatetime,timedelta data_dirD:/ig50_datadefread_kline(dm,periodday):file_pathos.path.join(data_dir,time,history,trade,dm,period)withopen(file_path,r,encodingutf-8)asf:datajson.load(f)dfpd.DataFrame(data)df.columns[dm,cjsj,cjjg,cjl,cje,zf]df[cjsj]pd.to_datetime(df[cjsj])returndfdefread_realtime(dm):file_pathos.path.join(data_dir,time,real,dm)withopen(file_path,r,encodingutf-8)asf:returnjson.load(f)defread_tick_data(dm):file_pathos.path.join(data_dir,time,real,trace,onebyone,dm)withopen(file_path,r,encodingutf-8)asf:datajson.load(f)dfpd.DataFrame(data)df.columns[dm,mc,cjsj,cjjg,cjl,jyzd]df[cjsj]pd.to_datetime(df[cjsj])returndf字段方面dm是股票代碼cjsj是成交時間cjjg是成交價格cjl是成交量cje是成交額zf是漲跌幅jyzd是交易方向。系統(tǒng)的核心是籌碼分布計算函數(shù)。我用日K線數(shù)據(jù)按價格區(qū)間統(tǒng)計籌碼分布每天根據(jù)換手率對歷史籌碼做衰減處理。defcalc_chip_distribution(dm,lookback_days120,price_step0.1):dfread_kline(dm,day)iflen(df)20:returnNonedfdf.tail(lookback_days).copy()df[hsl]df[cjl]/df[cjl].rolling(60).mean()chip_map{}for_,rowindf.iterrows():priceround(row[cjjg]/price_step)*price_step volumerow[cjl]turnoverrow[hsl]decay_factormax(0,1-turnover*0.3)forpinchip_map:chip_map[p]*decay_factorifpriceinchip_map:chip_map[price]volumeelse:chip_map[price]volume total_chipsum(chip_map.values())iftotal_chip0:returnNonechip_dist{p:v/total_chipforp,vinchip_map.items()}returnchip_dist拿到籌碼分布后第一個分析模塊是獲利盤比例計算。獲利盤比例是當(dāng)前價格以下的籌碼占總籌碼的比例反映市場中處于盈利狀態(tài)的持倉占比。defcalc_profit_ratio(dm):chip_distcalc_chip_distribution(dm)ifchip_distisNone:returnNonerealtimeread_realtime(dm)current_pricerealtime.get(cjjg,0)profit_chipsum(vforp,vinchip_dist.items()ifpcurrent_price)total_chipsum(chip_dist.values())profit_ratioprofit_chip/total_chipiftotal_chip0else0return{current_price:current_price,profit_ratio:profit_ratio*100,loss_ratio:(1-profit_ratio)*100}第二個分析模塊是籌碼集中度計算。集中度衡量籌碼是集中在少數(shù)價格區(qū)間還是分散在很寬的范圍內(nèi)。我用70%籌碼的價格區(qū)間寬度來衡量。defcalc_chip_concentration(dm):chip_distcalc_chip_distribution(dm)ifchip_distisNone:returnNonesorted_chipssorted(chip_dist.items(),keylambdax:x[0])prices[pforp,vinsorted_chips]volumes[vforp,vinsorted_chips]totalsum(volumes)cumsumnp.cumsum(volumes)/total p15_idxnp.searchsorted(cumsum,0.15)p85_idxnp.searchsorted(cumsum,0.85)p15_priceprices[min(p15_idx,len(prices)-1)]p85_priceprices[min(p85_idx,len(prices)-1)]concentration_width(p85_price-p15_price)/p15_price*100ifp15_price0else0realtimeread_realtime(dm)current_pricerealtime.get(cjjg,0)avg_costsum(p*vforp,vinchip_dist.items())return{concentration_width:concentration_width,avg_cost:avg_cost,current_price:current_price,cost_deviation:(current_price-avg_cost)/avg_cost*100,concentration_level:高ifconcentration_width15else中ifconcentration_width30else低}第三個分析模塊是籌碼峰值檢測。籌碼分布圖上的峰值代表大量籌碼集中的價格通常是重要的支撐位或壓力位。defdetect_chip_peaks(dm):chip_distcalc_chip_distribution(dm)ifchip_distisNone:returnNonesorted_pricessorted(chip_dist.keys())volumes[chip_dist[p]forpinsorted_prices]peaks[]foriinrange(1,len(volumes)-1):ifvolumes[i]volumes[i-1]andvolumes[i]volumes[i1]:peaks.append({price:sorted_prices[i],volume_ratio:volumes[i]/sum(volumes)*100})peaks.sort(keylambdax:x[volume_ratio],reverseTrue)realtimeread_realtime(dm)current_pricerealtime.get(cjjg,0)forpeakinpeaks:ifpeak[price]current_price:peak[type]支撐位else:peak[type]壓力位returnpeaks[:5]第四個分析模塊是籌碼轉(zhuǎn)移分析。通過對比不同日期的籌碼分布可以追蹤籌碼的轉(zhuǎn)移方向——是從低位向高位轉(zhuǎn)移主力出貨還是從高位向低位轉(zhuǎn)移主力建倉。defanalyze_chip_transfer(dm,period_days30):chip_currentcalc_chip_distribution(dm,lookback_days120)chip_pastcalc_chip_distribution(dm,lookback_days120period_days)ifchip_currentisNoneorchip_pastisNone:returnNonerealtimeread_realtime(dm)current_pricerealtime.get(cjjg,0)low_chip_currentsum(vforp,vinchip_current.items()ifpcurrent_price*0.9)low_chip_pastsum(vforp,vinchip_past.items()ifpcurrent_price*0.9)high_chip_currentsum(vforp,vinchip_current.items()ifpcurrent_price*1.1)high_chip_pastsum(vforp,vinchip_past.items()ifpcurrent_price*1.1)low_transferlow_chip_current-low_chip_past high_transferhigh_chip_current-high_chip_pastiflow_transfer-0.05andhigh_transfer0.05:signal高位轉(zhuǎn)移可能出貨eliflow_transfer0.05andhigh_transfer-0.05:signal低位轉(zhuǎn)移可能建倉else:signal無明顯轉(zhuǎn)移return{low_chip_change:low_transfer*100,high_chip_change:high_transfer*100,signal:signal}把這些模塊整合起來生成完整的籌碼分析報告。defgenerate_chip_report(dm):profitcalc_profit_ratio(dm)concentrationcalc_chip_concentration(dm)peaksdetect_chip_peaks(dm)transferanalyze_chip_transfer(dm)reportf籌碼分布分析報告 -{dm}\n\nifprofit:reportf獲利盤比例:{profit[profit_ratio]:.1f}%\nreportf套牢盤比例:{profit[loss_ratio]:.1f}%\n\nifconcentration:reportf平均持倉成本:{concentration[avg_cost]:.2f}\nreportf當(dāng)前價格:{concentration[current_price]:.2f}\nreportf偏離成本:{concentration[cost_deviation]:.1f}%\nreportf籌碼集中度:{concentration[concentration_level]}(寬度{concentration[concentration_width]:.1f}%)\n\niftransfer:reportf籌碼轉(zhuǎn)移信號:{transfer[signal]}\nreportf低位籌碼變化:{transfer[low_chip_change]:.1f}%\nreportf高位籌碼變化:{transfer[high_chip_change]:.1f}%\n\nifpeaks:report主要籌碼峰值:\nforpinpeaks:reportf{p[price]:.2f}({p[type]}, 占比{p[volume_ratio]:.1f}%)\nreturnreport實際運(yùn)行下來籌碼分析系統(tǒng)幫我發(fā)現(xiàn)了幾個有價值的信號。第一獲利盤比例低于20%時買入勝率約65%。第二籌碼集中度高的股票后續(xù)上漲概率更大。第三籌碼從低位向高位快速轉(zhuǎn)移是趨勢確認(rèn)信號。在使用過程中有幾點經(jīng)驗。第一籌碼分布是估算值不是精確值對于換手率極低的股票誤差較大。第二籌碼分布要結(jié)合資金流向數(shù)據(jù)一起看——籌碼集中主力凈流入信號更可靠。第三籌碼峰值是重要的支撐壓力位但不是鐵板一塊需要結(jié)合成交量來確認(rèn)。我用的數(shù)據(jù)來自本地數(shù)據(jù)引擎K線和逐筆成交數(shù)據(jù)接口完整做籌碼分析很方便。感興趣的朋友可以參考這個思路來構(gòu)建自己的籌碼分析系統(tǒng)。接口說明time/history/trade/{股票代碼}/{級別} - 歷史K線數(shù)據(jù)本地路徑數(shù)據(jù)存放目錄/time/history/trade/{dm}/{day|min1|min5}主要字段成交時間(cjsj)、成交價格(cjjg)、成交量(cjl)、漲跌幅(zf)time/real/{股票代碼} - 實時行情本地路徑數(shù)據(jù)存放目錄/time/real/{dm}主要字段成交價格(cjjg)、成交量(cjl)、換手率time/real/trace/onebyone/{股票代碼} - 逐筆成交數(shù)據(jù)本地路徑數(shù)據(jù)存放目錄/time/real/trace/onebyone/{dm}主要字段成交時間(cjsj)、成交價格(cjjg)、成交量(cjl)、交易方向(jyzd)time/zijin/zjlrqs/{股票代碼} - 個股資金流向本地路徑數(shù)據(jù)存放目錄/time/zijin/zjlrqs/{dm}主要字段主力凈流入(zlJlr)、主力凈比(zlJlb)資料參考ig50

相關(guān)新聞

2026年針對語音芯片生產(chǎn)廠家的選型剛需:正規(guī)企業(yè)核心標(biāo)準(zhǔn)、行業(yè)痛點梳理與避坑要點全解析

2026年針對語音芯片生產(chǎn)廠家的選型剛需:正規(guī)企業(yè)核心標(biāo)準(zhǔn)、行業(yè)痛點梳理與避坑要點全解析

2026年針對語音芯片生產(chǎn)廠家的選型剛需:正規(guī)企業(yè)核心標(biāo)準(zhǔn)、行業(yè)痛點梳理與避坑要點全解析 2026年,國內(nèi)智能硬件、汽車電子、醫(yī)療設(shè)備等領(lǐng)域的升級需求帶動語音芯片采購量持續(xù)攀升,不少剛接觸供應(yīng)鏈的采購、產(chǎn)品或研發(fā)人員,首次面臨…

2026/8/4 9:02:59 閱讀更多
期貨量化交易中過擬合的識別與防范策略

期貨量化交易中過擬合的識別與防范策略

1. 期貨量化交易中的過擬合陷阱 做量化交易的朋友都知道,策略失效是最大的噩夢。去年我團(tuán)隊開發(fā)的一個CTA策略,在回測階段年化收益高達(dá)80%,結(jié)果實盤運(yùn)行三個月就虧掉了20%的本金。復(fù)盤時發(fā)現(xiàn),這個策略完美擬合了歷史數(shù)據(jù)中的特定波…

2026/8/4 10:13:01 閱讀更多
2027 甘肅工業(yè)裝備與智能制造展覽會

2027 甘肅工業(yè)裝備與智能制造展覽會

智造隴原?裝備西北|2027 甘肅工業(yè)裝備與智能制造展覽會全面開啟招展工作 順應(yīng)制造業(yè)智能化、綠色化發(fā)展趨勢,助力甘肅省 “強(qiáng)工業(yè)” 行動落地實施,2027 甘肅工業(yè)裝備與智能制造展覽會(GIME2027)定檔 2027 年 5 月 14 …

2026/8/4 10:13:01 閱讀更多
SpringBoot寵物游戲平臺開發(fā)指南與實戰(zhàn)

SpringBoot寵物游戲平臺開發(fā)指南與實戰(zhàn)

1. 項目概述 "基于SpringBoot的購買狗線上游戲平臺"是一個典型的Java畢業(yè)設(shè)計選題,它結(jié)合了當(dāng)前流行的電商平臺和寵物養(yǎng)成游戲的特性。這個選題之所以適合作為畢業(yè)設(shè)計,是因為它涵蓋了企業(yè)級應(yīng)用開發(fā)的多個核心模塊:用戶系統(tǒng)、商品…

2026/8/4 10:13:01 閱讀更多
從零構(gòu)建企業(yè)級RAG與Agent系統(tǒng):LangChain實戰(zhàn)指南

從零構(gòu)建企業(yè)級RAG與Agent系統(tǒng):LangChain實戰(zhàn)指南

如果你正在學(xué)習(xí)大模型應(yīng)用開發(fā),可能會遇到這樣的困境:看了很多關(guān)于LangChain、RAG、Agent的教程,但依然不知道如何把這些技術(shù)串聯(lián)起來,構(gòu)建一個真正能解決實際問題的企業(yè)級應(yīng)用。你可能會困惑:為什么別人的RAG系統(tǒng)能精…

2026/8/4 10:03:01 閱讀更多
清華大學(xué)重磅EST:植物自導(dǎo)電閃蒸焦耳熱600°C/2600°C兩步法!稀土超積累植物秒級轉(zhuǎn)化為CeO?-石墨烯電催化劑!

清華大學(xué)重磅EST:植物自導(dǎo)電閃蒸焦耳熱600°C/2600°C兩步法!稀土超積累植物秒級轉(zhuǎn)化為CeO?-石墨烯電催化劑!

通訊作者:鄧兵、劉建國通訊單位:清華大學(xué)DOI:https://doi.org/10.1021/acs.est.6c00603研究背景稀土元素(REEs)是清潔能源技術(shù)與電子器件不可或缺的核心原料,然而傳統(tǒng)提取方式依賴能耗高、排放大的采礦與強(qiáng)…

2026/8/4 0:01:30 閱讀更多
貴州師范大學(xué)JCIS:混合焓調(diào)控設(shè)計PtCoNiCuCr高熵合金!ORR半波電位0.89 V/質(zhì)量活性2.4倍Pt/C!

貴州師范大學(xué)JCIS:混合焓調(diào)控設(shè)計PtCoNiCuCr高熵合金!ORR半波電位0.89 V/質(zhì)量活性2.4倍Pt/C!

研究背景質(zhì)子交換膜燃料電池(PEMFCs)因其高能量轉(zhuǎn)換效率和清潔零排放特性備受關(guān)注,然而陰極氧還原反應(yīng)(ORR)動力學(xué)遲緩、鉑催化劑成本高昂且耐久性不足的問題嚴(yán)重制約了其商業(yè)化進(jìn)程。將 Pt 與 3d 過渡金屬合金化可調(diào)控…

2026/8/4 0:01:30 閱讀更多
福州大學(xué)/清華大學(xué)AFM:脈沖焦耳熱900°C/1s合成Co?Cu催化劑,寬電位NH?法拉第效率~100%,MEA穩(wěn)定300h

福州大學(xué)/清華大學(xué)AFM:脈沖焦耳熱900°C/1s合成Co?Cu催化劑,寬電位NH?法拉第效率~100%,MEA穩(wěn)定300h

通訊作者:萬宇馳、張久俊、呂瑞濤通訊單位:福州大學(xué) 、清華大學(xué)DOI:https://doi.org/10.1002/adfm.76112核心導(dǎo)讀:本文提出"分步升級"廢硝酸鹽處理新路線——利用廢水中的金屬離子經(jīng)快速焦耳熱(40V&#xff…

2026/8/4 0:01:30 閱讀更多
3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南

3分鐘搞定!QQ空間歷史說說完整備份終極指南 【免費下載鏈接】GetQzonehistory 獲取QQ空間發(fā)布的歷史說說 項目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾想過,那些年發(fā)過的QQ空間說說,那些記錄青春的文字…

2026/8/3 12:53:38 閱讀更多
AMAT 0100-02186 I/O 分配 PCB

AMAT 0100-02186 I/O 分配 PCB

AMAT 0100-02186 I/O分配PCB板是應(yīng)用材料(Applied Materials)公司生產(chǎn)的一款用于半導(dǎo)體設(shè)備的I/O信號分配電路板。該型號(0100-02186)的核心特點如下:專用于Endura等半導(dǎo)體工藝腔室。集成信號路由與分配功能。連接控制…

2026/8/3 19:34:52 閱讀更多
Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機(jī)

Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機(jī)

Nissei Corp FFMN-32L-10-T0 40AX 三相異步電動機(jī)是日本日清(Nissei)品牌的一款工業(yè)用三相異步電機(jī),適用于自動化設(shè)備及通用機(jī)械驅(qū)動。該型號(FFMN-32L-10-T0 40AX)的核心特點如下:三相交流異步電動機(jī)。額定…

2026/8/3 19:34:54 閱讀更多