【AI量化第24篇】KhQuant 策略框架深度解析:讓策略開發回歸本質——基于miniQMT的量化交易回測系統開發實記

我是Mr.看海,我在嘗試用信號處理的知識積累和思考方式做量化交易,應用深度學習和AI實現股票自動交易,目的是實現財務自由~
目前我正在開發基于miniQMT的量化交易系統——看海量化交易系統。

本篇要講到量化的核心了——策略。說白了每個投資者在股市中都是有一套自己的經驗模式的,策略代碼是把這些經驗的固化,在排除掉人的情感的程序系統中運行。對于AI炒股,策略是實現人類思想與機器精密執行的橋梁,這就需要一個既符合用戶使用直覺,又能精確銜接量化交易系統的標準化框架。這種標準化的策略框架接口,可以為利用大型語言模型(如 DeepSeek)快速生成符合規范、能夠直接接入系統進行回測的策略代碼提供了極大的便利。

從一個交易思想到一個能在市場中穩定運行的自動化程序,中間往往隔著數據處理、接口對接、訂單管理、異常處理等一系列繁雜的工程細節。這不僅耗費開發者大量精力,也容易引入錯誤,從而模糊了策略研究與工程實現的界限

KhQuant 量化交易系統深刻理解策略開發者的這一痛點,其核心目標之一便是提供一個高度封裝、標準化的策略框架。這個框架旨在將策略邏輯與底層執行細節解耦,讓開發者可以將主要的精力投入到策略本身的研發與優化上,而不是迷失在重復性的"輪子制造"中。

一、 框架的基石:標準化的事件處理函數

KhQuant 框架采用事件驅動模式。這意味著策略代碼并不是一個從頭跑到尾的腳本,而是一個包含了特定"回調函數"的 Python 模塊。框架在運行時,會監聽各種市場事件(如新的行情數據到達、交易時段開始/結束等),并在特定事件發生時,調用你策略模塊中對應的函數。你所要做的,就是在這些預定義的函數"坑"里,填入你的策略代碼。

這種設計極大地簡化了策略結構。你不再需要自己編寫復雜的事件循環、數據訂閱和時間管理邏輯。

KhQuant 的策略本質上是一個 Python 文件,其中主要的預定義函數有四個:

1.1 init:萬事開頭 - 策略初始化

調用時機:?在整個策略生命周期中,僅在點擊"啟動策略"按鈕,框架加載策略文件后,實際運行策略邏輯之前被調用一次。

核心職責:?執行所有只需要進行一次的設置和準備工作。這包括:

  • 設置策略參數:?定義如移動平均線周期、交易閾值、止損比例等策略運行所需的固定參數。這些參數可以直接硬編碼,或更靈活地設計成從外部文件讀取(盡管 KhQuant 的 GUI 配置是更推薦的方式)。
  • 初始化狀態變量:?如果策略需要在不同時間點之間傳遞狀態(例如,跟蹤上一次開倉的價格、記錄連續虧損次數等),需要在這里初始化用于存儲這些狀態的變量(通常是全局字典或類的成員變量)。
  • 加載一次性數據:?如果策略需要某些啟動時就確定的、不隨時間變化的基礎數據(例如,某些股票的基本面信息),可以在這里加載。注意,對于歷史行情數據,框架通常會自動處理加載和緩存,策略層面一般無需在此處手動下載。

為何需要?init??它將一次性的設置代碼與需要反復執行的策略邏輯代碼分離開來。這不僅讓代碼結構更清晰、易于維護,也避免了在每次行情更新時都重復執行這些不必要的設置,提高了運行效率。

數據持久化:?init 函數本身不返回任何值。它設置的參數和狀態變量需要通過 Python 的作用域規則(如使用 global 關鍵字聲明全局變量,或將策略邏輯封裝在類中使用 self 屬性)來讓后續的 khHandlebar 等函數能夠訪問和修改。

1.2 khHandlebar:決策核心 - 響應市場變化

調用時機:?這是策略最核心、被調用最頻繁的函數。根據用戶在 GUI 中選擇的觸發模式(Tick 觸發、1 分鐘 K 線觸發、5 分鐘 K 線觸發或自定義時間點觸發),每當接收到新的符合條件的行情數據時,框架就會調用 khHandlebar。對于 K 線觸發,通常是在一根 K 線走完形成的那一刻觸發。

核心職責:?接收當前的市場快照和賬戶狀態,執行策略的核心計算和判斷,并決定是否需要進行交易。典型的執行流程包括:

  1. 數據提取:?從傳入的 data 字典中獲取當前時間、所需股票的最新行情(收盤價、最高/最低價等)、賬戶的可用資金、當前的實際持倉情況等。
  2. 指標計算:?基于獲取的行情數據(以及可能需要的歷史數據,通過 xtdata 接口獲取),計算技術指標(如 MA, MACD, RSI 等)或執行其他模型運算。
  3. 條件判斷:?根據計算出的指標和當前的持倉狀態,判斷是否滿足開倉、平倉或其他交易條件。
  4. 信號生成:?如果判斷結果需要交易,則調用輔助函數(如 generate_signal)或手動構建標準格式的交易信號字典。

為何需要?khHandlebar??它構成了策略對市場實時變化的響應機制。框架負責在正確的時間點,將所需的信息打包喂給這個函數,開發者只需專注于"輸入->計算->判斷->輸出信號"這一核心流程。

數據流:?接收框架傳入的 data 字典,返回一個包含零個或多個交易信號字典的列表(后邊詳解)。

1.3 khPreMarket/?khPostMarket:每日開盤前/收盤后執行

調用時機:?分別在每個 A 股交易日(由框架判斷,會跳過周末和法定節假日)的開盤前(具體時間可在 GUI 配置,如 08:30)和收盤后(具體時間可在 GUI 配置,如 15:30)被調用一次。

核心職責:

khPreMarket?(盤前):?適合執行每日開始時的準備工作。例如:

  • 獲取當天需要關注的宏觀信息或新聞。
  • 重新加載可能每日更新的配置文件或模型參數。
  • 基于隔夜數據或盤前分析,調整當日交易參數或風險限制。
  • 如果策略需要在集合競價或開盤時立即下單,可以在此生成交易信號。

khPostMarket?(盤后):?適合執行每日結束后的總結和維護工作。例如:

  • 統計當日交易表現,計算盈虧、勝率等指標。
  • 進行當日的風險評估和持倉分析。
  • 保存重要的運行時數據或交易記錄到外部文件。
  • 基于當日市場表現,更新機器學習模型或調整策略參數供次日使用。
  • 生成交易總結報告并發送給用戶。

為何需要?khPreMarket/khPostMarket??它們提供了一種機制,將那些不需要在交易時間內高頻執行的、與交易日相關的例行任務,從核心的 khHandlebar 中剝離出來。這使得 khHandlebar 可以更專注于對實時行情做出快速反應,同時也讓整個策略的運作流程更加結構化和自動化。

數據流:?輸入的 data 字典主要包含調用時刻的時間、賬戶和持倉信息(注意,此時通常沒有實時的個股行情數據)。輸出同樣是標準格式的交易信號列表(允許在盤前/盤后生成交易指令,例如計劃在第二天開盤執行的指令)。

可選性:?如果你的策略非常簡單,不需要進行任何盤前盤后的特殊處理,那么完全可以不在策略文件中定義這兩個函數,框架會跳過調用。

二、 信息高速公路:詳解 data 字典

data 字典是 KhQuant 框架與策略之間信息傳遞的核心樞紐。它的設計目標是解決策略開發中數據來源分散、需要調用多個 API 獲取狀態的痛點,將當前時間點策略決策所需的關鍵信息集中打包提供。理解 data 字典的結構至關重要:

__current_time__?(字典):?提供精確的時間參考:

timestamp (整數): 標準 Unix 時間戳(秒級或毫秒級,取決于框架實現精度),便于進行時間相關的計算和比較。
datetime (字符串): 'YYYY-MM-DD HH:MM:SS' 格式,方便閱讀和日志記錄。
date (字符串): 'YYYY-MM-DD' 格式,常用于獲取日級別數據或按天處理邏輯。
time (字符串): 'HH:MM:SS' 格式,用于判斷具體交易時段。

__account__?(字典):?反映當前的資金賬戶狀態:

cash (浮點數):? 核心字段,指當前 可用于交易的現金余額。策略計算買入量時應主要基于此值。
total_asset (浮點數): 總資產,通常等于 cash + market_value。反映賬戶整體規模。
market_value (浮點數): 所有持倉按當前市價計算的總市值。
frozen_cash (浮點數): 因掛單等原因被凍結的資金。cash 通常是總現金減去 frozen_cash 后的結果。

__positions__?(字典):?提供詳細的當前實際持倉信息。鍵是股票代碼 (如 '000001.SZ'),值是包含該股票持倉詳情的字典:

對于每支持倉股票? stock_code?(字典):
volume (整數):? 當前總共持有該股票的數量。
can_use_volume (整數):? 核心字段,指當前 可以賣出的數量。它考慮了 T+1 規則(當天買入的股票當天不能賣出)以及可能的凍結(例如已掛賣單但未成交的部分)。策略計算賣出量時應基于此值。
avg_price (浮點數): 持倉成本價。
current_price (浮點數): 框架會盡力在調用策略前更新該股票的最新市場價格,方便計算盈虧和市值。
market_value (浮點數): 該持倉的當前市值 (current_price * volume)。
profit (浮點數): 該持倉的浮動盈虧。

股票代碼?(字典):?(主要在 khHandlebar 中出現)包含當前觸發事件的市場行情數據。鍵是具體的股票代碼。

close (浮點數): 對于 K 線觸發,這是一般是 K 線收盤價;對于 Tick 觸發,這是最新成交價。 這是策略中最常用的價格字段
open, high, low (浮點數): K 線的開盤、最高、最低價。
volume, amount (整數/浮點數): K 線或 Tick 的成交量和成交額。
(其他字段): 用戶在 GUI "數據設置"中勾選訂閱的其他行情字段(如 pre_close, turnover_rate 等)也會在這里提供。

這種設計的好處在于,策略開發者在 khHandlebar 中幾乎可以通過簡單直觀的方式獲取所需的核心信息,極大地降低了與底層交互的復雜度。

三、 指令的規范:標準交易信號格式

當策略判斷需要執行交易時,它需要"告知"框架執行意圖。為了讓框架的交易管理器 (TradeManager) 能夠準確無誤地理解并執行,KhQuant 定義了標準化的交易信號格式。任何需要下單的函數 (khHandlebar, khPreMarket, khPostMarket) 都必須返回一個包含零個或多個這種標準信號字典的列表。

標準信號格式如下:

{"code": str,         # 股票代碼 (必須是 '代碼.市場' 格式, e.g., "000001.SZ", "600000.SH")"action": str,       # 交易動作 (必須是 "buy" 或 "sell")"price": float,      # 下單價格 (框架會以此價格下限價單 Limit Order)"volume": int,       # 下單數量 (必須是整數, 且通常是 100 的倍數)"reason": str,       # 交易原因 (建議填寫,用于日志記錄和分析)"timestamp": int     # 時間戳 (可選, 框架若發現缺失會自動補充當前時間戳)
}

字段詳解:

  • code: 必須是精確的股票代碼,包含交易所后綴(.SZ 或 .SH)。錯誤的代碼會導致下單失敗。
  • action: 明確指定是買入 (buy) 還是賣出 (sell)。
  • price: 這是你期望成交的價格。框架會提交一個限價單 (Limit Order)?到交易所。如果當前市場價格優于(買單時更低,賣單時更高)或等于你的限價,訂單可能會立即成交;否則,訂單會進入掛單簿等待對手方撮合。注意:價格精度很重要,不正確的價格(如偏離市價過多、不符合價格籠子規則)可能導致廢單。generate_signal 函數會自動處理價格精度(通常保留兩位小數)。
  • volume:?必須是整數,且對于 A 股,通常必須是?100 的整數倍(一手等于 100 股),除非是賣出時處理不足一手的零股。數量錯誤是導致下單失敗的常見原因。generate_signal 函數會自動計算并確保數量是 100 的倍數。
  • reason: 雖然不是強制字段,但強烈建議填寫。它會被記錄在交易日志中,極大地幫助后續進行策略調試、績效分析和理解交易行為。一個好的 reason 應簡潔說明觸發該交易的條件。
  • timestamp: 主要用于回測時精確對齊交易發生的時間點。實盤中如果省略,框架會使用當前系統時間戳。

遵循這個標準信號格式,可以確保策略的交易意圖被框架準確理解和執行,有效解決了策略開發者**"如何將策略判斷轉化為實際下單指令"以及"下單參數容易出錯"**的痛點。

四、 框架設計的核心優勢

總結來說,KhQuant 策略框架的設計旨在提供以下核心優勢,解決策略開發中的常見難題:

  1. 高度聚焦策略邏輯:?通過將底層細節(數據連接、API 調用、事件處理、訂單執行)封裝在框架內部,開發者可以將幾乎全部精力投入到交易策略本身的設計、實現和優化上,告別繁瑣的工程事務
  2. 清晰的事件驅動模型:?框架自動處理時間的流逝和市場數據的更新,在恰當的時機調用對應的策略函數 (init, khHandlebar 等),使得策略代碼能夠自然地對市場事件做出反應,無需開發者手動管理復雜的事件循環
  3. 標準化的開發范式:?預定義的函數接口 (init, khHandlebar...)、統一的數據輸入 (data 字典) 和標準的信號輸出格式,降低了學習曲線,使得不同開發者編寫的策略具有相似的結構,易于理解、維護和交流。
  4. 集中的信息獲取:?data 字典將決策所需的關鍵信息(時間、行情、賬戶、持倉)集中提供,避免了在策略代碼中分散調用各種查詢接口,簡化了策略邏輯。
  5. 靈活性與可擴展性:?雖然核心接口是標準化的,但策略文件本身是純粹的 Python 模塊。開發者可以在其中自由導入其他庫、定義自己的輔助函數、創建類來組織復雜邏輯,框架不限制策略內部的實現方式

五、 事半功倍:khQTTools 策略輔助工具箱

為了讓策略開發更加高效和不易出錯,KhQuant 在 khQTTools.py 中提供了一系列精心設計的輔助函數。這些函數封裝了常見的、易錯的計算和操作,建議在策略中優先使用它們。

5.1 generate_signal函數

def generate_signal(data: Dict, stock_code: str, price: float, ratio: float, action: str, reason: str = "") -> List[Dict]:"""生成標準交易信號Args:data: 包含時間、賬戶、持倉信息的字典stock_code: 股票代碼price: 交易價格ratio: 交易比例 (買入時指占剩余現金比例,賣出時指占可賣持倉比例)action: 'buy' 或 'sell'reason: 交易原因Returns:List[Dict]: 包含單個信號的列表,或空列表"""

這是生成交易信號的首選函數。它完美解決了策略開發者在構建信號字典時**"買賣數量計算復雜且易錯"、"信號格式容易遺漏或錯誤"**的核心痛點。它可以實現:

  • 買入 (action='buy'): 調用 calculate_max_buy_volume 函數,根據傳入的 ratio (資金使用比例) 和當前賬戶可用資金 (data['__account__']['cash']),以及考慮了交易成本后,計算出實際能買入的最大股數 (已向下取整至 100 的倍數)。
  • 賣出 (action='sell'): 獲取當前該股票的可用持倉?(data['__positions__'][stock_code]['can_use_volume']),根據傳入的 ratio (持倉使用比例) 計算出要賣出的目標股數,并向下取整至 100 的倍數。
  • 自動格式化:?自動填充 code, action, price (處理精度), volume (確保整數和手數)。如果未提供 reason,會生成一個默認的原因字符串。自動添加 timestamp。
  • 健壯性:?如果計算出的可買/可賣數量為 0(資金不足、持倉不足、比例過低等),則返回空列表 [],并記錄警告日志,避免生成無效信號。
  • 使用建議:?在 khHandlebar 中,一旦判斷需要交易,直接調用此函數獲取信號列表,然后返回即可。
  • 示例:?signals = generate_signal(data, '000001.SZ', 10.5, 0.5, 'buy', '價格突破,半倉買入')

5.2 其他工具

khQTTools.py 還包含如 is_trade_day(date_str)(判斷是否為交易日)、is_trade_time()(判斷是否在交易時間段內)等實用函數,進一步簡化策略中的常見判斷。

六、說明

上述介紹的是khQuant 策略框架的 1.0 版本。隨著實踐經驗的積累和用戶反饋的收集,框架的定義和接口后續也有可能會有所調整和優化。所有重要的更新和版本迭代信息,我們都會在 KhQuant 的官方網站或相關文檔庫中進行實時更新和詳細說明,敬請關注。

為了進一步降低量化交易的門檻,后續計劃設計一套與 KhQuant 框架緊密結合的系統提示詞。讓開發者能夠通過自然語言描述交易思想,借助 DeepSeek 等先進的大型語言模型,快速生成符合 KhQuant 框架規范、可直接運行和回測的策略代碼雛形,加速從想法到驗證的過程。

七、下一步考慮

后邊還有幾件事要做,做完后回測系統就可以跟大家見面了:

  • 策略的項目化管理設置
  • 日志管理
  • 與成熟的回測軟件(比如QMT)進行相同策略的對比,以驗證軟件的有效性

因此,目前的回測系統還不滿足放出來給大家使用的狀態,待測試穩定后,快捷的安裝包版本以及全部開源代碼都會放出來給讀者朋友們使用。

近期我盡量加快軟件和文章更新的頻率,盡早讓朋友們使用上這個軟件。

end、開通miniQMT

升級后的數據下載模塊會隨著后續回測系統的發布一同更新發布。

上述講到的系統是基于miniQMT,很多券商都可以開通miniQMT,不過門檻各有不同,很多朋友找不到合適的券商和開通渠道。這里我可以聯系券商渠道幫忙開通,股票交易費率是萬1,開通成功的朋友都可以免費使用上邊開發的“看海量化交易系統”。這個系統還在持續開發的過程中,數據下載的功能已經可以使用,回測部分正在加緊開發,大家可以先開通MiniQMT的權限,這樣回測部分的功能放出后就能第一時間用上了~

對于想要開通miniQMT、使用上邊開發的“看海量化交易系統”的朋友們,請大家關注一下我的公眾號“看海的城堡”,在公眾號頁面下方點擊相應標簽即可獲取。

相關文章

【深度學習量化交易1】一個金融小白嘗試量化交易的設想、暢享和遐想

【深度學習量化交易2】財務自由第一步,三個多月的嘗試,找到了最合適我的量化交易路徑

【深度學習量化交易3】為了輕松免費地下載股票歷史數據,我開發完成了可視化的數據下載模塊

【深度學習量化交易4】 量化交易歷史數據清洗——為后續分析掃清障礙

【深度學習量化交易5】 量化交易歷史數據可視化模塊

【深度學習量化交易6】優化改造基于miniQMT的量化交易軟件,已開放下載~(已完成數據下載、數據清洗、可視化模塊)

【深度學習量化交易7】miniQMT快速上手教程案例集——使用xtQuant進行歷史數據下載篇

【深度學習量化交易8】miniQMT快速上手教程案例集——使用xtQuant進行獲取實時行情數據篇

【深度學習量化交易9】miniQMT快速上手教程案例集——使用xtQuant獲取基本面數據篇

【深度學習量化交易10】miniQMT快速上手教程案例集——使用xtQuant獲取板塊及成分股數據篇

【深度學習量化交易11】miniQMT快速上手教程——使用XtQuant進行實盤交易篇(一萬七千字超詳細版本)

【深度學習量化交易12】基于miniQMT的量化交易框架總體構建思路——回測、模擬、實盤通吃的系統架構

【深度學習量化交易13】繼續優化改造基于miniQMT的量化交易軟件,增加補充數據功能,優化免費下載數據模塊體驗!

【深度學習量化交易14】正式開源!看海量化交易系統——基于miniQMT的量化交易軟件

【深度學習量化交易15】基于miniQMT的量化交易回測系統已基本構建完成!AI炒股的框架初步實現

【深度學習量化交易16】韭菜進階指南:A股交易成本全解析

【深度學習量化交易17】觸發機制設置——基于miniQMT的量化交易回測系統開發實記

【深度學習量化交易18】盤前盤后回調機制設計與實現——基于miniQMT的量化交易回測系統開發實記

【深度學習量化交易19】行情數據獲取方式比測(1)——基于miniQMT的量化交易回測系統開發實記

【深度學習量化交易20】量化交易策略評價指標全解析——基于miniQMT的量化交易回測系統開發實記

【深度學習量化交易21】行情數據獲取方式比測(2)——基于miniQMT的量化交易回測系統開發實記

【AI量化第22篇】如何輕松看懂回測結果——基于miniQMT的量化交易回測系統開發實記

【AI量化第23篇】數據下載/補充模塊升級,并與回測系統正式集成——基于miniQMT的量化交易回測系統開發實記

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75895.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75895.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75895.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java面試黃金寶典48

1. C++ 的拷貝構造函數,深拷貝和淺拷貝 定義 拷貝構造函數:在 C++ 里,拷貝構造函數屬于特殊的構造函數,其功能是使用一個已存在的對象來初始化一個新對象。當對象以值傳遞的方式作為參數傳給函數、函數返回對象、用一個對象初始化另一個對象時,拷貝構造函數會被調用。淺拷…

OpenCV學習之獲取圖像所有點的坐標位置(二)

1.功能介紹 (1)使用openCV解析了.jpeg、.jpg、.png格式的圖像文件,輸出了圖像的寬、高、通道數; (2)創建txt格式文件,保存圖像中各像素點的rgba值。 2.環境介紹 操作系統:window10 開發語言:visual studio 2015 c++ 3.功能實現過程 3.1環境設置 (1)打開Vs2015…

B2B2C多用戶商城平臺 的兩種創新玩法

以前隨便搞個淘寶京東那樣的商城就能躺著賺錢的日子早過去了!現在市面上各種電商玩法花樣百出:小紅書那種刷著刷著就下單的"種草"電商,拼多多那種"幫我砍一刀"的社交電商,還有抖音快手那種看著視頻突然就想買…

【Bluedroid】A2DP Sink播放流程源碼分析(二)

接上一篇繼續分析:【Bluedroid】A2DP Sink播放流程源碼分析(一)_安卓a2dp sink播放流程-CSDN博客 AVDTP接收端(Sink)流事件處理 bta_av_sink_data_cback 是 Bluedroid 中 A2DP Sink 角色的 AVDTP 數據回調函數,負責處理接收端的…

抗量子算法驗證工具

抗量子算法計算工具 抗量子算法驗證工具ML-KEMML-DSASLH-DSA 抗量子算法驗證工具 2024年末,美國NIST陸續公布了FIPS-203、FIPS-204、FIPS-205算法標準文檔,抽空學習了一下,做了個算法計算工具。 ML-KEM ML-DSA SLH-DSA 需要的朋友可留言交流…

2025年PMP考試有哪些變化?難點在哪里?

PMP(項目管理專業人士資格認證)考試因其廣泛的行業認可度和實用性,成為許多專業人士提升職業競爭力的重要選擇。然而,對于初次接觸PMP考試的考生來說,其廣度與深度的平衡、理論與實踐的結合,以及跨文化思維…

Docker學習筆記-docker安裝、刪除

一、在centOS 7中docker的默認安裝目錄 # Docker 主配置文件目錄 ls /etc/docker# Docker 數據目錄(鏡像、容器、卷等) ls /var/lib/docker# Docker 可執行文件路徑 which docker # 輸出類似 /usr/bin/docker 二、docker文件目錄說明 目錄/文件用途/…

MATLAB求和∑怎么用?

MATLAB求和∑怎么用? 一:題目:求下列方程的和 二、代碼如下 1.syms函數 (方法一) 代碼如下(示例): 1. syms x 2. symsum((x.^22*x).^3,1,100) 3. 2.直接用循環 (方法二) 代碼如下&am…

每日算法-鏈表(2.兩數相加、24.兩兩交換鏈表中的節點、143.重排鏈表)

一.兩數相加 1.1題目描述 1.2題解思路 定義兩個指針l1,l2依次遍歷兩個鏈表,用變量add存儲l1加l2的值,將add的個位數取出來充當新節點的值,然后將add的個位數刪去,即add /10,循環此操作。 重點分析: 1.跟…

Flutter學習 滾動組件(1):ListView基本使用

目錄 一、ListView構造方法1.1 常規方法1.2 ListView.builder1.3 ListView.separated 二、自定義ListView樣式和布局:三、ListView性能優化:總結: 一、ListView構造方法 主要以下幾種方法: 常規方法,直接使用默認的構…

ESLint常見錯誤

1、Strings must use singlequote —— 字符串必須使用單引號 2、Extra semicolon semi——額外的分號:一行語句結尾不能添加分號 3、Unexpected trailing comma —— 行尾多了一個逗號 4、Newline required at end of file but not found ——文件結尾必須要新加…

Windows進行磁盤分區/擴容

Windows進行磁盤分區/擴容 導航 文章目錄 Windows進行磁盤分區/擴容導航分區教程壓縮卷教程 用Windows自帶的磁盤管理進行分區/擴容,但有個東西需要說明下是: 物理特性限制 磁盤分區的物理特性決定了擴容操作的方向。在磁盤上,數據是線性存儲…

獲取類路徑

分析 String pathThread.currentThread().getContextClassLoader().getResource("log").getPath(); 這行代碼用于獲取類路徑(classpath)下名為"log"的資源的文件系統路徑,我來詳細解析它的執行過程和潛在問題: 1. 代碼分解解析 j…

安裝fvm可以讓電腦同時管理多個版本的flutter、flutter常用命令、vscode連接模擬器

打開 PowerShellfvm安裝 dart pub global activate fvm安裝完成后,如果顯示FVM無法識別,那么需要去添加環境變量path添加這個:C:\Users\Administrator\AppData\Local\Pub\Cache\bin 常用命令 fvm releases 查看用戶可以裝的flutter版本fvm l…

Kaggle-Disaster Tweets-(二分類+NLP+模型融合)

Disaster Tweets 題意: 就是給出一個dataframe包含text這一列代表著文本,文本會有一些詞,問對于每條記錄中的text是真關于災難的還是假關于災難的。 比如我們說今天作業真多,這真是一場災難。實際上這個災難只是我們調侃而言的。…

Flutter 2025 Roadmap

2025 這個路線圖是有抱負的。它主要代表了我們這些在谷歌工作的人收集的內容。到目前為止,非Google貢獻者的數量超過了谷歌雇傭的貢獻者,所以這并不是一個詳盡的列表,列出了我們希望今年Flutter能夠出現的所有令人興奮的新事物!在…

如何通過API接口獲取淘寶商品價格?實操講解

要通過API接口獲取淘寶商品價格,需使用淘寶開放平臺(Taobao Open Platform, TOP)提供的商品詳情API(如taobao.item.get或taobao.item_get)。以下是完整的實操步驟: 一、前期準備 注冊淘寶開放平臺賬號 訪問…

按鍵精靈安卓/ios腳本輔助工具開發教程:如何把界面配置保存到服務器

在使用按鍵精靈工具輔助的時候,多配置的情況下,如果保存現有的配置,并且讀取,尤其是游戲中多種任務并行情況下,更是需要界面進行保存,簡單分享來自紫貓插件的配置保存服務器寫法。 界面例子: …

DP34 【模板】前綴和 -- 前綴和

目錄 一&#xff1a;題目 二&#xff1a;算法原理 三&#xff1a;代碼實現 一&#xff1a;題目 題目鏈接&#xff1a;【模板】前綴和_牛客題霸_牛客網 二&#xff1a;算法原理 三&#xff1a;代碼實現 #include <iostream> #include <vector> using namespac…

關于我的服務器

最近我買了臺騰訊云服務器&#xff0c;然后新手小白只會用寶塔。。。 安裝完之后默認的端口是8888&#xff0c;打開面板就會提示我有風險。然后 我改了端口之后&#xff0c;怎么都打不開。 于是 學到了幾句命令可以使用&#xff1a; //查看端口是否已經修改成功 cat www/se…