建構空頭跨式交易風險治理:使用 Amazon Bedrock AgentCore Memory 建立可稽核交易流程
本文將 AgentCore Memory 應用於空頭跨式風險治理,強化跨會話連續性、交易日常監控、反馬丁格爾執行與風險閘門決策。
此文章現在已發布於 AWS 官方 Builder Center。你可以前往官方文章,或關閉此視窗並留在此頁繼續閱讀。
本文將 AgentCore Memory 應用於空頭跨式風險治理,強化跨會話連續性、交易日常監控、反馬丁格爾執行與風險閘門決策。
並非投資建議
提供的資訊僅用於一般教育和風險意識。它不是財務、投資、稅務、法律或交易建議,也不是購買、出售或持有任何工具的建議。
僅限合法的泰國規劃
該助理為合法的泰國旅行、搬遷、度假和靜修計劃提供支持,包括行程創意、後勤、文化準備、住宿研究、健康選擇以及僅針對合法旅行者的合規、透明的決策支持。
不得非法逃脫或逃生援助
在任何情況下,本服務都不會協助隱藏、逃避當局、規避移民、法院命令、債務、制裁或法律義務、非法飛行、虛假文件、隱瞞或任何非法逃亡。
空頭跨式部位交易-風險治理範圍
空頭跨式部分交易風險治理內容遵循上傳的框架,強調⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性、壓力損失、反馬丁格爾行為、限制、升級、監控文件、審批和監督紀律的治理控制。
商:
將其記錄在我的貿易日記中:
儀器:⟦64⟧選擇權
動作:跳過交易
原因:買賣價差太大
結果:沒有進行任何交易
教訓:避免強行進入
商:
讓我們來做一下我的日終回顧。
⟦56⟧持平。
我遵守我的規則。
主要錯誤:我看一個糟糕的設定太久了。
改進:定義監控低品質設定的時間限制。
本註釋取代了演示輸出摘要,並應在交易員早晨例行程序的步驟1到步驟9之後使用。它僅用於教育風險管理用途,而不是投資建議或交易建議。
從3月到6月2026,宏觀環境並不是一個乾淨的低波動環境。 5月⟦57⟧同比上漲4.2%,為三年來最高的年度通膨資料,而核心⟦57⟧同比2.9%。能源價格是一個主要因素,本月能源價格上漲了 3.9%,在 12 個月內上漲了 23.5%。這對於賣空選擇權很重要,因為通膨衝擊可以迅速重新定價利率、波動性、指數偏差和保證金要求。
5 月份勞動市場依然堅挺,非農業就業人數較去年同期成長172,000,失業率為4.3%,平均時薪年增3.4%。富有彈性的勞動力市場使聯準會快速放鬆貨幣政策的壓力較小,這使得利率波動性和股票波動性風險與空頭溢價策略相關。
下一個⟦55⟧決策窗口是6月中旬2026,市場評論表明,由於通膨仍高於目標,預計聯準會將保持謹慎。同一消息來源報告稱,2年期公債接近4.13%,10年期公債接近4.55%,這表明利率仍然足夠高,足以影響貼現率、股票倍數和選擇權波動風險。
波動性已經足夠高,需要謹慎行事,但還沒有極端到足以證明忽視尾部風險。 ⟦54⟧ 顯示 6 月 10、2026 在 22.22 的 ⟦45⟧,以及同一天22.89 的⧟73⟧⧟。這意味著近期和3月隱含波動率都是任何空頭跨式部位或空頭勒式部位審查的主動風險輸入。
另一個市場資料來源顯示,6 月 11、2026 日內⟦60⟧ 為 18.84,3 月變化為負 30.96%,⟦74⧟7 週變化為 ⧟ ⧦這表明波動性已較先前的壓力水平已壓縮,但仍可能大幅上漲,這正是空頭選擇權交易員可能變得過度自信的類型。
第1:空頭跨式部分交易-風險治理架構
這部分介紹了使用⟦2⟧的空頭跨式產品交易-風險治理。它解釋了持久記憶體如何支援對⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性、壓力損失和反馬丁格爾行為的嚴格監控。目標是工作流程控制,而不是市場預測、交易推薦或尋求溢價,並且在日常交易中沒有嚴格的風險限制。
第2部分:跨會話持久性
這部分解釋了跨會話持久性。助理會記住先前的警告、未解決的操作、儀表板首選擇權以及重複的損失回補交易模式。防止每個早晨在⟦47⟧漂移、⟦53⟧衝擊、保證金壓力、流動性惡化或情緒化的溢價修復行為之後成為一張白紙,加強連續性、監管和日常空頭跨式部位風險審查例程。
第 3 部分:記憶體提取管道
這部分描述記憶體提取。助手從對話中識別事實、偏好、摘要、暴露細節、監控習慣、風險限制和後續項目。儲存的上下文可以包括空頭跨位置式曝光、⟦43⟧、⟦33⟧、⟦34⟧、⟦⟦71 ⟧⟧、⟦61⟧、⟦66⟧更改、傾斜、邊距使用、每天安全追蹤買賣價差和壓力損失閾值。
第4部分:情景記憶策略
這部分涵蓋情景記憶。助理捕捉情況、使用者意圖、使用的工具、推理路徑、結果以及交易例程的教訓。對各個事件的反思揭示了諸如忽視硬性限制、鞅行為、空頭⟦48⟧集中、空頭⟦53⟧擴張、流動性壓力和治理弱點等模式,需要未來加強風險語言控制。
第5部分:交易員早市監控
這部分定義了交易員早市監控。該例程載入最近的上下文、摘要記憶體、警告、未解決的操作和首選擇權。然後,它回顧隔夜市場、部位快照、⟦47⟧、⟦48⟧、⟦53⟧、⟦66⟧、保證金、流動性和壓力情景,在交易討論討論開始之前生成風險簡式交易。
第 6: 空頭跨式部份 Risk Gates
這部分詳細介紹了空頭跨式地點風險門。 ⟦47⟧蓋茨審查⟦43⟧、⟦33⟧、預算使用情形及避險狀態。 ⟦48⟧ 登機口審查 ⟦61⟧、⟦62⟧ 鄰近度、差距風險與事件風險。 ⟦53⟧,保證金、流動性和壓力損失門決定是否立即監控、避險、減少、購買翅膀、轉換、平倉或啟動終止開關。
第7部分:反馬丁格爾治理
這部分解釋了反馬丁格爾的治理。助手會偵測是否因為有效的流程原因或避免實現損失而增加了風險。它警告不要加倍下注,出售保費來修復損失,在違規後增加空頭⟦48⟧,在壓力期間增加空頭⟦53⟧,或今天用新保費隱藏舊損失。
第8部分:代理行為邊界
這部分定義了行為邊界。助理使用平白的文字、簡潔的措辭、專業的語氣和已知的偏好。它避免了投資建議、價格目標、買進訊號、賣出訊號和基於確定性的預測。與泰國相關的請求僅限於合法的旅行、搬遷、度假或撤退計劃,不包括逃避、藏匿、非法越獄或合法規避請求。
這部分介紹了使用⟦2⟧的空頭跨式產品交易-風險治理。它解釋了持久記憶體如何支援對⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性、壓力損失和反馬丁格爾行為的嚴格監控。目標是工作流程控制,而不是市場預測、交易推薦或尋求溢價,並且在日常交易中沒有嚴格的風險限制。
目標:
為 ⟦58⟧ 交易風險工作流程建構受監管的 ⟦2⟧ 助手,以空頭跨式部分交易風險治理為中心。
迅速的:
與⟦2⟧建構空頭跨式部位交易風險治理。
結果:
設計使用情境持久性、語義回憶、摘要記憶、偏好記憶和風險模式記憶來保留⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性、壓力損失、反馬丁格爾和跨會話的監控上下文。
尖端:
這部分解釋了跨會話持久性。助理會記住先前的警告、未解決的操作、儀表板首選擇權以及重複的損失回補交易模式。防止每個早晨在⟦47⟧漂移、⟦53⟧衝擊、保證金壓力、流動性惡化或情緒化的溢價修復行為之後成為一張白紙,加強連續性、監管和日常空頭跨式部位風險審查例程。
目標:
防止每個交易早上在之前的⟦47⟧漂移、⟦53⟧衝擊、保證金壓力、流動性惡化或危險的修復行為之後成為一張白紙。
迅速的:
記住先前的警告、未解決的操作、儀表板首選擇權以及跨會話重複的損失回補交易模式。
結果:
跨會話持久性意味著代理可以記住多個會話中的重要事實、偏好、摘要和重複行為模式。在此交易風險工作流程中,它幫助代理保留有關空頭跨式部位暴露、⟦47⟧/⟦48⟧/⟦53⟧風險、保證金使用、流動性壓力、反馬丁警告和合法恢復計劃的背景資訊。上傳的⟦59⟧強調,空頭跨式部位風險必須透過⟦47⟧、⟦48⟧、⟦53⟧、壓力損失、保證金、流動性和治理限制來控制,而不僅僅是保費收入。
萃取:
加工流水線:
記憶策略:語意記憶策略
描述:語義記憶從對話中提取事實資訊並將其儲存在向量索引記憶體中以進行相似性搜尋。
好處:即使使用者不重複相同的關鍵字,它也可以幫助代理人檢索事實的交易細節、技術解釋、產品資訊和先前的風險討論。
使用案例:適用於產品資訊、技術細節、波動性術語、空頭跨式部分事實、⟦47⟧/⟦53⟧/⟦48⟧解釋、保證金規則、波動性表面註釋和事實交易風險資料。
記憶體策略:記憶體策略總結
描述:摘要記憶創建並維護長對話的壓縮摘要,包括關鍵決策、風險警告、偏好、未解決的問題和先前的背景。
優點:它減少了令牌負載,提高了效能,並在長時間互動中保持連續性,而無需將每個原始資訊注入提示中。
用例:適用於後續對話、長時間交易旅程、先前風險警告、保證金升級歷史、⟦47⟧/⟦48⟧/⟦53⟧違規討論、泰國恢復計劃以及大型對話歷史的連續性。
記憶體策略:使用者偏好記憶體策略
描述:使用者偏好記憶追蹤使用者特定的偏好、溝通方式、交易儀表板偏好、旅行偏好、聯繫規則和日常偏好。
好處:它可以個性化未來的回應,並防止代理重複詢問已知資訊。
使用案例:對於通訊偏好、首選風險儀表板格式、首選市場、首選交易指標、泰國城市偏好、飲食偏好和聯繫偏好有用。
這部分描述記憶體提取。助手從對話中識別事實、偏好、摘要、暴露細節、監控習慣、風險限制和後續項目。儲存的上下文可以包括空頭跨位置式曝光、⟦43⟧、⟦33⟧、⟦34⟧、⟦⟦71 ⟧⟧、⟦61⟧、⟦66⟧更改、傾斜、邊距使用、每天安全追蹤買賣價差和壓力損失閾值。
目標:
從對話中識別事實、偏好、摘要、暴露細節、監控習慣、風險限制和後續項目。
迅速的:
店鋪空頭跨式位置曝光、⟦43⟧、⟦33⟧、⟦34⟧、⟦53⟧、⟦61⟦⟧⟦值
結果:
儲存的上下文可以包括空頭跨位置式曝光、⟦43⟧、⟦33⟧、⟦34⟧、⟦⟦71 ⟧⟧、⟦61⟧、⟦66⟧更改、傾斜、邊距使用、每天安全追蹤買賣價差和壓力損失閾值。
範例:風險模式語意記憶策略
描述:風險模式記憶捕捉反覆出現的高風險行為,例如平均下跌、虧損後賣出更多溢價、忽略⟦47⟧違規、持有臨近到期的裸空頭⟦48⟧或在壓力下增加空頭⟦⟦7048⟧或在壓力下增加空頭⟦⟦7048⟧或在壓力下增加空頭⟦⟦70⟦⟧。
好處:它允許代理人儘早發現危險的行為模式,並升級為降低風險的語言。
使用案例:對於短期波動性風險監控、反馬丁格爾執行、終止開關提醒、保證金壓力追蹤、流動性警告和治理警報很有用。 ⟦59⟧將鞅式加倍下注、弱硬限制、空頭⟦48⟧暴露、空頭⟦53⟧暴露、保證金壓力和治理失敗視為關鍵的災難性短期波動失敗模式。
範例:市場監控總結記憶體策略
描述:市場監控記憶體儲存使用者的每日市場清單、觀察的工具、波動指標、宏觀事件、保證金閾值和首選儀表板結構。
好處:它使日常市場監控會議更快、更一致,並且與先前定義的風險控制更好地保持一致。
使用案例:適用於交易員早上例行公事、⟦47⟧/⟦48⟧/⟦53⟧儀表板、⟦66⟧表面審查、壓力測試工作流程、流動性檢查、開市前審查和每日風險控制提醒。
範例:使用者偏好記憶體策略
描述:使用者偏好記憶捕捉使用者偏好的溝通方式、儀表板佈局、監控頻率、交易風險焦點、市場興趣以及旅行或生活方式偏好。它不是只儲存事實,而是儲存用戶希望代理如何回應以及哪些偏好應該影響未來的互動。
使用者提示範例
每天早上,在開盤前給我一個簡短的明文市場監測。
重點在於空頭跨式部位風險、⟦43⟧、⟦33⟧、⟦34⟧、⟦53⟧暴露、⟦66⟦53⟧暴露、⟦66⟦⟧變化壓力損失壓力。
僅對章節標題使用粗體。保持語氣專業、直接。
如果我詢問有關泰國的問題,請專注於合法旅行、搬遷或度假計劃。
除非我詢問細節,否則不要重複冗長的解釋。
通訊偏好:純文字格式。
格式首選擇權:僅對標題使用粗體。
語氣偏好:專業、直接。
長度偏好:簡短明了,除非要求詳細資訊。
常規偏好:每日早市開盤前監測。
交易焦點偏好:空頭跨式地點風險監控。
風險指標偏好:⟦43⟧、⟦33⟧、⟦34⟧、⟦53⟧暴露、⟦66⟧變動、差金使用壓力損失。
風險升級偏好:當⟦47⟧、⟦48⟧、⟦53⟧、保證金風險、流動性風險、壓力損失風險出現時,明確警示。
旅行偏好:泰國主題應僅關注合法旅行、搬遷、度假或靜修計劃。
解釋偏好:除非有要求,否則避免重複冗長的解釋。
坐席行為提示
當使用者開始新會話時,以明文形式初始化回應。
僅對章節標題使用粗體。
保持答案簡潔、專業、直接。
對於交易風險主題,優先考慮空頭跨式部位、⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性和壓力損失監控。
對於市場監控請求,請製作一份開盤前清單,而不是一篇長篇文章。
對於與泰國相關的請求,僅提供合法的旅行、搬遷、度假或靜修計劃。
除非當前任務需要更新的資訊,否則避免重新詢問已知的偏好。
這部分涵蓋情景記憶。助理捕捉情況、使用者意圖、使用的工具、推理路徑、結果以及交易例程的教訓。對各個事件的反思揭示了諸如忽視硬性限制、鞅行為、空頭⟦48⟧集中、空頭⟦53⟧擴張、流動性壓力和治理弱點等模式,需要未來加強風險語言控制。
目標:
捕捉情況、使用者意圖、使用的工具、推理路徑、結果以及交易例程中的經驗教訓。
迅速的:
使用情景記憶,以便助手可以記住過去的交易日,了解因果關係,並從先前的結果中學習。
結果:
情景記憶是一種人工智慧代理設計,可幫助模型記住過去的具體經驗、理解因果關係並從先前的結果中學習。它介於靜態事實和簡短的聊天歷史記錄之間,允許代理隨著時間的推移而改進。
與⟦63⟧主要透過語意相似性檢索資訊不同,情景記憶會記住完整的經驗。它分三個步驟進行:
益處:
情景記憶可以幫助代理人從過去的工作流程、失敗和成功中學習。智能體不僅可以記住發生了什麼,還可以記住為什麼會發生、使用了哪些工具、做出了哪些決定以及隨之而來的結果。
這有助於代理商:
例子:
代理可能會記得使用具有特定參數的特定工具解決了先前的錯誤,或者某個工作流程失敗並且下次應該避免。
使用案例:
當代理人需要記住一系列事件、將當前任務與過去的事件進行比較並應用學到的經驗教訓時,請使用情景記憶。
常見用例包括:
跳過情景記憶:
這部分定義了交易員早市監控。該例程載入最近的上下文、摘要記憶體、警告、未解決的操作和首選擇權。然後,它回顧隔夜市場、部位快照、⟦47⟧、⟦48⟧、⟦53⟧、⟦66⟧、保證金、流動性和壓力情景,在交易討論討論開始之前生成風險簡式交易。
目標:
定義一個可重複的預先開啟例程,在檢查任何空頭跨式部位或空頭勒式部位設定之前載入上下文。
迅速的:
每天早上,我想在開市前回顧我的空頭跨式部位風險。追蹤⟦43⟧、⟦33⟧、⟦34⟧、⟦53⟧暴露、⟦61⟧、⟦⟧⟧暴露、⟦61⟧、⟦⟧⟧損失、保證金如果發生⟦47⟧、⟦53⟧、⟦48⟧、保證金、或流動性違規,提醒我不要平均下跌或賣出更多選擇權來挽回損失。
結果:
語意策略摘錄:
使用者偏好策略捕獲:
摘要策略建立:
風險模式記憶策略捕獲:
步驟1:盤前交易時段開始
開始交易員早晨市場監測時段。
載入:
目的:如果昨天已經出現⟦47⟧漂移、⟦53⟧衝擊、保證金壓力、流動性惡化或危險修復行為,防止交易員將今天視為白板。
步驟2:隔夜市場回顧
查看:
目的:在選擇權市場開盤前識別缺口風險。
步驟3:位置快照
審查:
目的:確認部位是否仍在預期策略範圍內。
步驟4:⟦47⟧監控
查看:
建議的警報邏輯:
⟦59⟧解釋說,空頭跨式部位部位可能會在⟦47⟧附近開始中性,但負面的⟦48⟧會隨著標的物的走勢而迅速將47⧟方向。
步驟5:⟦48⟧監控
查看:
建議規則:
⟦59⟧強調,⟦48⟧在臨近到期時變得特別危險,因為小的潛在波動可能會產生大的⟦47⟧變化,並使動態避險變得昂貴或無效。
步驟6:⟦53⟧和⟦66⟧監控
查看:
建議的警報邏輯:
⟦59⟧強調空頭跨式部位是空頭⟦53⟧,這表示即使標的價格沒有大幅波動,隱含波動率擴張也會造成損失。
步驟7:保證金與流動性監控
查看:
建議的警報邏輯:
⟦59⟧警告說,保證金壓力和流動性惡化可能會加劇做空波動性策略的損失。
步驟8:關節壓力測試
運行組合場景:
目的:避免分別檢查⟦47⟧和⟦53⟧,真正的危險往往是現貨下跌,⟦66⟧上漲,偏斜更寬,保證金更高,流動性更差。
步驟9:反馬丁格爾檢查
問:
強制提醒:
⟦59⟧將鞅式平均下跌、缺乏硬性風險限制和治理薄弱視為災難性短期波動結果的核心失敗模式。
步驟10:早上決策輸出
市場現況:
希臘現狀:
保證金和流動性:
所需採取的行動:
行為護欄:
這部分詳細介紹了空頭跨式地點風險門。 ⟦47⟧蓋茨審查⟦43⟧、⟦33⟧、預算使用情形及避險狀態。 ⟦48⟧ 登機口審查 ⟦61⟧、⟦62⟧ 鄰近度、差距風險與事件風險。 ⟦53⟧,保證金、流動性和壓力損失門決定是否立即監控、避險、減少、購買翅膀、轉換、平倉或啟動終止開關。
目標:
讓⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性和壓力損失門確定任何溢價銷售對話之前的工作流程。
迅速的:
僅當⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性和壓力損失預算均在限制範圍內時,才應繼續進行空頭選擇權銷售審查。
結果:
如果違反任何硬性限制,正確的工作流程是減少、避險、購買翅膀、轉換為定義的風險結構、關閉或啟動終止開關。
演示輸出摘要:
交易員執行摘要摘要
本註釋取代了演示輸出摘要,並應在交易員早晨例行程序的步驟1到步驟9之後使用。它僅用於教育風險管理用途,而不是投資建議或交易建議。
從3月到6月2026,宏觀環境並不是一個乾淨的低波動環境。 5月⟦57⟧同比上漲4.2%,為三年來最高的年度通膨資料,而核心⟦57⟧同比2.9%。能源價格是一個主要因素,本月能源價格上漲了 3.9%,在 12 個月內上漲了 23.5%。這對於賣空選擇權很重要,因為通膨衝擊可以迅速重新定價利率、波動性、指數偏差和保證金要求。
5 月份勞動市場依然堅挺,非農業就業人數較去年同期成長172,000,失業率為4.3%,平均時薪年增3.4%。富有彈性的勞動力市場使聯準會快速放鬆貨幣政策的壓力較小,這使得利率波動性和股票波動性風險與空頭溢價策略相關。
下一個⟦55⟧決策窗口是6月中旬2026,市場評論表明,由於通膨仍高於目標,預計聯準會將保持謹慎。同一消息來源報告稱,2年期公債接近4.13%,10年期公債接近4.55%,這表明利率仍然足夠高,足以影響貼現率、股票倍數和選擇權波動風險。
波動性已經足夠高,需要謹慎行事,但還沒有極端到足以證明忽視尾部風險。 ⟦54⟧ 顯示 6 月 10、2026 在 22.22 的 ⟦45⟧,以及同一天22.89 的⧟73⟧⧟。這意味著近期和3月隱含波動率都是任何空頭跨式部位或空頭勒式部位審查的主動風險輸入。
另一個市場資料來源顯示,6 月 11、2026 日內⟦60⟧ 為 18.84,3 月變化為負 30.96%,⟦74⧟7 週變化為 ⧟ ⧦這表明波動性已較先前的壓力水平已壓縮,但仍可能大幅上漲,這正是空頭選擇權交易員可能變得過度自信的類型。
步驟1到步驟9之後的執行說明:
透過載入最後 K 個對話回合和最新的摘要記憶體來啟動會話。如果先前的警告包括⟦47⟧漂移、⟦53⟧衝擊、保證金壓力、流動性惡化或溢價修復行為,請勿將今天視為徹底重置。
在評估任何空頭選擇權設定之前,請檢查隔夜宏觀磁帶。關注⟦57⟧、就業資料、⟦55⟧預期、國債殖利率、能源價格、股票期貨、波動指數和事件日曆。當前的通膨和利率狀況意味著交易員應該假設宏觀整體風險仍然活躍。
在考慮任何賣空選擇權之前,請確認部位快照。查看標的資產、到期日、⟦61⟧、行權位置、損虧平衡範圍、目前現貨、部位大小以及部位是否為空頭跨式部位、空頭勒式部位、空頭⟦48⟧或空頭⟦⟦70⟦⦧。上傳的風險框架強調空頭跨式部位暴露不是被動收入;是做空波動率、空頭⟦48⟧、空頭⟦53⟧敞口,尾部風險不對稱。
⟦47⟧門:如果⟦43⟧或⟦33⟧已經接近軟、硬或清算閾值,請勿繼續進行新的空頭選擇權敞口。如果⟦33⟧使用了50–70%的風險預算,則從機會審查轉向避險或減少模式。如果⟦33⟧超過100%,則轉向強制風險降低。若超過125–150%,則轉入清算或設定風險轉換。上傳的框架強調,空頭跨式位置位置可以在⟦47⟧附近開始,但很快就會變成方向性的,因為負⟦48⟧會加速⟦47⟧的移動。
⟦48⟧門:如果⟦61⟧低於7天,如果部位接近⟦62⟧,或者如果重大宏觀發布臨近,則將設定歸類為空頭⟦⟧⟧⟧⟦2風險升高。不要只依賴高⟦49⟧。如果⟦34⟧已經超出預算,減少空頭⟦48⟧,購買翅膀,或關閉而不是增加新的空頭選擇權。上傳的框架警告說,即將到期的⟦48⟧可能會使動態避險變得昂貴或無效。
⟦53⟧門:6月⟦60⟧和3月隱含波動率均在20左右,交易員必須檢查當前的溢價是否是對實際風險的補償,還是只是在不穩定的宏觀條件下賣出的邀請。在任何賣空選擇權出售之前,估計 ⟦53⟧ ⟦56⟧ 加上 3、加上 5 和加上 10 vol 的衝擊。如果⟦53⟧損失超出預定義預算,請勿增加空頭⟦53⟧。
保證金與流動性門:如果保證金使用量上升,買賣價差變寬,或退出成本增加,則不要賣出更多溢價。目前的宏觀狀況包括通膨壓力、高利率和活躍的波動性,因此保證金模型在壓力下可能會迅速變化。上傳的框架強調,保證金壓力和流動性惡化可能會將可控的短期波動性損失轉變為強制去槓桿化事件。
联合压力门:在考虑空头期权风险之前,运行即期下跌加 ⟦66⟧ 上涨的情景。使用轻度、中度、重度、崩溃和融化场景。主要危險不是單獨的⟦47⟧或單獨的⟦53⟧;現貨下跌,⟦66⟧上漲,偏差更大,保證金更高,同時流動性更差。上传的框架明确要求组合 ⟦47⟧ 和 ⟦53⟧ 压力测试,而不是孤立的希腊语检查。
反鞅門:如果賣出空頭選擇權的原因是為了彌補先前的損失、降低成本基礎、在違約後收取權利金或避免實現損失,則停止。不要多賣跨式,不要增加空頭⟦53⟧,不要增加空頭⟦48⟧,不要用新的保費來彌補舊的損失。上傳的框架將鞅式修復行為、弱硬限制和治理不善確定為核心災難性短期波動故障模式。
上午執行狀態:
當通膨高於目標、⟦55⟧重新定價風險活躍、⟦60⟧接近或高於20、能源或利率波動正在造成宏觀不確定性時,市場狀態應設定為「觀察」或「壓力」,而不是「平靜」。
僅當⟦47⟧、⟦48⟧、⟦53⟧、保證金、流動性和壓力損失預算均在限制範圍內時,才應繼續進行空頭選擇權銷售審查。如果違反任何硬性限制,正確的工作流程是減少、避險、購買翅膀、轉換為定義的風險結構、關閉或啟動終止開關。
交易員行動注意事項:
最終執行注意事項:
當今的短期選擇權工作流程應優先考慮生存,其次是溢價。目前3月的宏觀資料顯示通膨壓力、聯準會謹慎預期、勞動資料堅挺、利率上升和活躍波動。這種環境不會自動禁止空頭選擇權分析,但在考慮任何空頭溢價風險敞口之前,它需要嚴格的希臘預算、壓力測試、流動性檢查、反馬丁格爾紀律和預定義的終止開關規則。
這部分解釋了反馬丁格爾的治理。助手會偵測是否因為有效的流程原因或避免實現損失而增加了風險。它警告不要加倍下注,出售保費來修復損失,在違規後增加空頭⟦48⟧,在壓力期間增加空頭⟦53⟧,或今天用新保費隱藏舊損失。
目標:
檢測是否由於有效的流程原因或避免實現損失而增加了風險。
迅速的:
不要雙倍下注,賣出保費來修復損失,違規後增加空頭⟦48⟧,壓力期間增加空頭⟦53⟧,或用新保費隱藏舊損失。
結果:
助理警告不要加倍下注,出售保費來修復損失,違規後增加空頭⟦48⟧,壓力期間增加空頭⟦53⟧,或今天用新保費隱藏舊損失。
尖端:
這部分定義了行為邊界。助理使用平白的文字、簡潔的措辭、專業的語氣和已知的偏好。它避免了投資建議、價格目標、買進訊號、賣出訊號和基於確定性的預測。與泰國相關的請求僅限於合法的旅行、搬遷、度假或撤退計劃,不包括逃避、藏匿、非法越獄或合法規避請求。
目標:
保持助理具有教育性、注重流程、合法、專業、簡潔且可審計。
迅速的:
避免投資建議、價格目標、買進訊號、賣出訊號、基於確定性的預測、非法規避支援和法律規避請求。
結果:
助理使用平白的文字、簡潔的措辭、專業的語氣和已知的偏好。它避免了投資建議、價格目標、買進訊號、賣出訊號和基於確定性的預測。與泰國相關的請求僅限於合法的旅行、搬遷、度假或撤退計劃,不包括逃避、藏匿、非法越獄或合法規避請求。
步驟1:使用⟦20⟧安裝依賴項。
步驟2:導入字典、日期時間、代理、工具、⟦27⟧、⟦25⟧、⟦26⟧。
步驟3:配置⟦46⟧、⟦42⟧、⟦32⟧、⟦28⟧。
步驟4:使用⟦46⟧創建⟦25⟧作為客戶端。
步驟5:使用⟦9⟧定義策略並進行交易⟦16⟧。
步驟6:使用client.⟦7⟧建立記憶體並儲存⟦35⟧。
步驟7:為market_focus、key_events及監視清單定義⟦3⟧工具。
步驟8:為account_risk_budget、max_daily_loss、max_trade_loss和margin_usage定義⟦18⟧工具。
步驟9:為儀器定義⟦19⟧工具、trade_thesis、entry_condition、invalidation_condition及exit_plan。
步驟10:定義工具⟦12⟧工具、action_taken、原因、結果與教訓。
步驟11:為pnl_summary、rule_adherence、錯誤和improvement_plan定義⟦5⟧工具。
步驟12:使用⟦29⟧和⟦35⟧定義⟦22⟧來映射命名空間。
步驟13:使用⟦35⟧、客戶端與命名空間定義⟦15⟧。
步驟14:定義⟦1⟧以檢索劇集、反思、⟦31⟧和⟦44⟧。
步驟15:定義⟦6⟧以保存資訊、⟦44⟧、⟦30⟧和工具結果。
步驟16:定義⟦21⟧來註冊⟦17⟧和⟦11⟧回調。
步驟17:使用⟦15⟧(⟦35⟧,客戶端)建立episodic_hooks。
步驟18:使用鉤子、模型、工具、狀態和⟦24⟧創建⟦13⟧。
你是交易員的日常助理,擁有過去交易日的記憶。
你的角色:
- 幫助交易員遵循有紀律的日常生活
- 支援上市前準備、風險審查、交易計劃、交易日誌和日終反思
- 使用過去的交易事件來識別重複出現的流程問題
- 應用有關紀律、風險控制、執行品質和情緒模式的反思
- 注重流程、風險管理與決策衛生
- 不提供財務建議、投資建議、價格目標或買賣證券的指示
當您看到⟦8⟧上下文時,請使用它來識別相關的流程模式。
當您看到⟦14⟧上下文時,請應用那些學到的紀律和風險控制模式。
總是:
1. 在交易想法之前先考慮風險限制
2. 需要預先定義的失效條件
3. 鼓勵入場前調整部位規模
4. 追蹤交易員是否遵循計劃
5. 辨識情緒化交易、報復性交易、過度交易和平均下跌行為
6. 在適當的情況下鼓勵確定風險結構
7. 提醒交易員,條件不明確時無需進行交易
8. 維持產出具有教育意義和以流程為中心,而不是建議性的
絕不:
1. 建議購買、出售、做空或持有特定資產
2. 準確預測市場方向
3. 鼓勵槓桿、鞅、雙倍下注或報復性交易
4. 超越風險限制
5. 將未實現的復甦希望視為有效的風險計劃
功能:建立盤前交易清單。
參數:
返回:
提示:建立盤前交易清單
市場焦點:
{market_focus}
關鍵事件:
{key_events}
關注列表:
{watchlist}
常規:
1. 回顧隔夜價格走勢
2. 查看重大經濟或企業事件
3. 審查波動狀況
4. 確認流動性和點差
5. 在進入之前定義交易無效級別
6. 確認每日最大損失限額
7. 下單前確認部位大小
8. 避免在情緒或衝動損失後增加風險
功能:查看每日交易風險限額。
參數:
返回:
提示:查看每日交易風險限額
風險限額審查
帳戶風險預算:
{account_risk_budget}
每日最大損失:
{max_daily_loss}
最大單筆交易損失:
{max_trade_loss}
保證金使用:
{margin_usage}
規則:
1. 如果達到每日最大損失,則停止交易
2. 損失後不要增加尺寸
3. 不要用新的交易來彌補舊的損失
4. 當流動性惡化時減少風險敞口
5. 除非風險計劃明確批准,否則避免未定義的風險部位
6. 需要時將未定義的風險轉換為已定義的風險
7. 遵循預先定義的退出計劃,無需自行決定
功能:在進入交易之前建立結構化交易計劃。
參數:
返回:
提示:在進入交易之前建立結構化交易計劃
樂器:
{instrument}
貿易論文:
{trade_thesis}
入場條件:
{entry_condition}
失效條件:
{invalidation_condition}
退出計劃:
{exit_plan}
交易前確認:
1. 部位大小已定義
2. 定義損失限額
3. 退出條件在進入之前定義
4. 交易不違反每日風險預算
5. 交易不依賴平均下降或鞅行為
功能:記錄貿易日記帳分錄。
參數:
返回:
提示:記錄貿易日記帳分錄
樂器:
{instrument}
採取的行動:
{action_taken}
原因:
{reason}
結果:
{result}
課:
{lesson}
評論標籤:
- 流程紀律
- 風險控制
- 執行品質
- 情緒控制
- 遵守規則
功能:創建日終交易回顧。
參數:
返回:
提示:創建日終交易回顧
⟦56⟧總結:
{pnl_summary}
遵守規則:
{rule_adherence}
錯誤:
{mistakes}
改進計劃:
{improvement_plan}
反思問題:
1. 我是否遵循了預先定義的風險限制?
2. 我是否避免了報復性交易?
3. 我是否在沒有計劃的情況下避免了平均下降?
4. 我是否尊重流動性和點差條件?
5. 我退出是基於規則而不是希望嗎?
6. 明天該重複什麼?
7. 明天必須避免什麼?
提示:創建交易員日常工作
你是交易員的日常助理,擁有過去交易日的記憶。
你的角色:
- 幫助交易員遵循有紀律的日常生活
- 支援上市前準備、風險審查、交易計劃、交易日誌和日終反思
- 使用過去的交易事件來識別重複出現的流程問題
- 應用有關紀律、風險控制、執行品質和情緒模式的反思
- 注重流程、風險管理與決策衛生
- 不提供財務建議、投資建議、價格目標或買賣證券的指示
當您看到⟦8⟧上下文時,請使用它來識別相關的流程模式。
當您看到⟦14⟧上下文時,請應用那些學到的紀律和風險控制模式。
總是:
1. 在交易想法之前先考慮風險限制
2. 需要預先定義的失效條件
3. 鼓勵入場前調整部位規模
4. 追蹤交易員是否遵循計劃
5. 辨識情緒化交易、報復性交易、過度交易和平均下跌行為
6. 在適當的情況下鼓勵確定風險結構
7. 提醒交易員,條件不明確時無需進行交易
8. 維持產出具有教育意義和以流程為中心,而不是建議性的
絕不:
1. 建議購買、出售、做空或持有特定資產
2. 準確預測市場方向
3. 鼓勵槓桿、鞅、雙倍下注或報復性交易
4. 超越風險限制
5. 將未實現的復甦希望視為有效的風險計劃
# Step 1: Install dependencies
# !pip install -qr requirements.txt
# Step 2: Import required packages
from typing import Dict
from datetime import datetime
from strands import Agent, tool
from strands.hooks import (
AfterInvocationEvent,
HookProvider,
HookRegistry,
MessageAddedEvent,
)
from bedrock_agentcore.memory import MemoryClient
from bedrock_agentcore.memory.constants import StrategyType
# Step 3: Configure runtime settings
REGION = "us-west-2"
TRADER_ID = "trader_001"
SESSION_ID = f"trading_day_{datetime.now().strftime('%Y%m%d%H%M%S')}"
MEMORY_NAME = "TraderDailyRoutineEpisodicMemory"
# Step 4: Create memory client
client = MemoryClient(region_name=REGION)
# Step 5: Define episodic memory strategy
strategies = [
{
StrategyType.EPISODIC.value: {
"name": "TradingRoutineEpisodes",
"description": "Captures daily trading routines, risk reviews, trade journals, and end-of-day reflections",
"namespaceTemplates": ["/trading/actor/{actorId}/episodes/"],
"reflectionConfiguration": {
"namespaceTemplates": [
"/trading/actor/{actorId}/"
]
},
}
}
]
# Step 6: Create memory resource with episodic strategy
memory = client.create_memory_and_wait(
name=MEMORY_NAME,
strategies=strategies,
description="Episodic memory for trader daily routine assistant",
event_expiry_days=180,
)
memory_id = memory["id"]
# Step 7: Create trader routine tool for pre-market checklist
@tool
def create_premarket_checklist(market_focus: str, key_events: str, watchlist: str) -> str:
"""Create a pre-market trading checklist.
Args:
market_focus: Main market, sector, index, asset class, or product being monitored
key_events: Scheduled events such as earnings, CPI, FOMC, central bank decision, or major data release
watchlist: Symbols or instruments the trader plans to monitor
Returns:
Structured pre-market checklist
"""
return f"""PRE-MARKET CHECKLIST
Market Focus:
{market_focus}
Key Events:
{key_events}
Watchlist:
{watchlist}
Routine:
1. Review overnight price action
2. Check major economic or corporate events
3. Review volatility conditions
4. Confirm liquidity and spreads
5. Define trade invalidation levels before entry
6. Confirm maximum daily loss limit
7. Confirm position size before any order
8. Avoid adding risk after emotional or impulsive losses"""
# Step 8: Create trader routine tool for risk limits
@tool
def check_risk_limits(
account_risk_budget: str,
max_daily_loss: str,
max_trade_loss: str,
margin_usage: str,
) -> str:
"""Check daily trading risk limits.
Args:
account_risk_budget: Total risk budget allocated for the trading day
max_daily_loss: Maximum permitted loss for the day
max_trade_loss: Maximum permitted loss for a single trade
margin_usage: Current or planned margin usage
Returns:
Structured risk limit review
"""
return f"""RISK LIMIT REVIEW
Account Risk Budget:
{account_risk_budget}
Maximum Daily Loss:
{max_daily_loss}
Maximum Single-Trade Loss:
{max_trade_loss}
Margin Usage:
{margin_usage}
Rules:
1. Stop trading if maximum daily loss is reached
2. Do not increase size after a loss
3. Do not use new trades to recover old losses
4. Reduce exposure when liquidity deteriorates
5. Avoid undefined-risk positions unless explicitly approved by the risk plan
6. Convert undefined risk to defined risk when required
7. Follow the pre-defined exit plan without discretionary overrides"""
# Step 9: Create trader routine tool for trade plan
@tool
def create_trade_plan(
instrument: str,
trade_thesis: str,
entry_condition: str,
invalidation_condition: str,
exit_plan: str,
) -> str:
"""Create a structured trade plan before entering a trade.
Args:
instrument: Symbol, index, futures contract, option structure, or asset being considered
trade_thesis: Reason for considering the trade
entry_condition: Objective condition required before entry
invalidation_condition: Condition that proves the trade idea is wrong
exit_plan: Planned profit-taking, stop-loss, time stop, or risk reduction rule
Returns:
Structured trade plan
"""
return f"""TRADE PLAN
Instrument:
{instrument}
Trade Thesis:
{trade_thesis}
Entry Condition:
{entry_condition}
Invalidation Condition:
{invalidation_condition}
Exit Plan:
{exit_plan}
Pre-Trade Confirmation:
1. Position size is defined
2. Loss limit is defined
3. Exit condition is defined before entry
4. Trade does not violate daily risk budget
5. Trade does not depend on averaging down or martingale behavior"""
# Step 10: Create trader routine tool for trade journal
@tool
def record_trade_journal(
instrument: str,
action_taken: str,
reason: str,
result: str,
lesson: str,
) -> str:
"""Record a trade journal entry.
Args:
instrument: Symbol, index, futures contract, option structure, or asset traded
action_taken: What was done, such as entered, exited, reduced, hedged, or skipped
reason: Why the action was taken
result: Outcome of the action
lesson: Lesson learned from the trade or decision
Returns:
Structured trade journal entry
"""
return f"""TRADE JOURNAL ENTRY
Instrument:
{instrument}
Action Taken:
{action_taken}
Reason:
{reason}
Result:
{result}
Lesson:
{lesson}
Review Tags:
- Process discipline
- Risk control
- Execution quality
- Emotional control
- Rule adherence"""
# Step 11: Create trader routine tool for end-of-day review
@tool
def create_end_of_day_review(
pnl_summary: str,
rule_adherence: str,
mistakes: str,
improvement_plan: str,
) -> str:
"""Create an end-of-day trading review.
Args:
pnl_summary: Summary of daily profit and loss
rule_adherence: Whether trading rules were followed
mistakes: Mistakes, emotional decisions, or process breaks observed
improvement_plan: Specific improvement plan for the next trading day
Returns:
Structured end-of-day review
"""
return f"""END-OF-DAY REVIEW
P&L Summary:
{pnl_summary}
Rule Adherence:
{rule_adherence}
Mistakes:
{mistakes}
Improvement Plan:
{improvement_plan}
Reflection Questions:
1. Did I follow my pre-defined risk limits?
2. Did I avoid revenge trading?
3. Did I avoid averaging down without a plan?
4. Did I respect liquidity and spread conditions?
5. Did I exit based on rules rather than hope?
6. What should be repeated tomorrow?
7. What must be avoided tomorrow?"""
# Step 12: Create helper command to get namespace mappings
def get_namespaces(mem_client: MemoryClient, memory_id: str) -> Dict:
"""Get namespace mapping for memory strategies."""
memory_strategies = mem_client.get_memory_strategies(memory_id)
result = {}
for strategy in memory_strategies:
reflection_config = strategy.get("reflectionConfiguration", {})
result[strategy["type"]] = {
"namespaces": strategy.get("namespaces", []),
"reflectionNamespaces": reflection_config.get("namespaces", []),
}
return result
# Step 13: Create episodic memory hook provider
class EpisodicMemoryHooks(HookProvider):
"""Memory hooks for episodic memory with reflections."""
def __init__(self, memory_id: str, client: MemoryClient):
self.memory_id = memory_id
self.client = client
self.namespaces = get_namespaces(self.client, self.memory_id)
def retrieve_episodes_and_reflections(self, event: MessageAddedEvent):
"""Retrieve relevant episodes and reflections before processing."""
messages = event.agent.messages
if messages[-1]["role"] != "user" or "toolResult" in messages[-1]["content"][0]:
return
user_query = messages[-1]["content"][0]["text"]
actor_id = event.agent.state.get("actor_id")
if not actor_id:
return
all_context = []
episodic_config = self.namespaces.get("EPISODIC", {})
for namespace_template in episodic_config.get("namespaces", []):
namespace = namespace_template.format(actorId=actor_id)
episodes = self.client.retrieve_memories(
memory_id=self.memory_id,
namespace=namespace,
query=user_query,
top_k=3,
)
for episode in episodes:
if isinstance(episode, dict):
content = episode.get("content", {})
if isinstance(content, dict):
text = content.get("text", "").strip()
if text:
all_context.append(f"[PAST TRADING EPISODE] {text}")
for namespace_template in episodic_config.get("reflectionNamespaces", []):
namespace = namespace_template.format(actorId=actor_id)
reflections = self.client.retrieve_memories(
memory_id=self.memory_id,
namespace=namespace,
query=user_query,
top_k=2,
)
for reflection in reflections:
if isinstance(reflection, dict):
content = reflection.get("content", {})
if isinstance(content, dict):
text = content.get("text", "").strip()
if text:
all_context.append(f"[TRADING REFLECTION] {text}")
if all_context:
context_text = "\n".join(all_context)
original_text = messages[-1]["content"][0]["text"]
messages[-1]["content"][0]["text"] = (
f"Past Trading Experience:\n{context_text}\n\nCurrent Query: {original_text}"
)
def save_trading_interaction(self, event: AfterInvocationEvent):
"""Save trading interaction for episode extraction."""
messages = event.agent.messages
if len(messages) < 2 or messages[-1]["role"] != "assistant":
return
interaction_messages = []
for msg in messages:
role = msg["role"].upper()
content = msg["content"]
if isinstance(content, list):
for item in content:
if "text" in item:
interaction_messages.append((item["text"], role))
elif "toolUse" in item:
tool_info = item["toolUse"]
tool_text = f"[TOOL: {tool_info.get('name', 'unknown')}]"
interaction_messages.append((tool_text, "TOOL"))
elif "toolResult" in item:
result = (
item["toolResult"]
.get("content", [{}])[0]
.get("text", "")
)
interaction_messages.append(
(f"[RESULT: {result[:200]}]", "TOOL")
)
if interaction_messages:
actor_id = event.agent.state.get("actor_id")
session_id = event.agent.state.get("session_id")
if not actor_id or not session_id:
return
self.client.create_event(
memory_id=self.memory_id,
actor_id=actor_id,
session_id=session_id,
messages=interaction_messages,
)
def register_hooks(self, registry: HookRegistry) -> None:
"""Register episodic memory hooks."""
registry.add_callback(
MessageAddedEvent,
self.retrieve_episodes_and_reflections,
)
registry.add_callback(
AfterInvocationEvent,
self.save_trading_interaction,
)
# Step 14: Create trader daily routine agent
episodic_hooks = EpisodicMemoryHooks(memory_id, client)
trader_routine_agent = Agent(
hooks=[episodic_hooks],
model="global.anthropic.claude-haiku-4-5-20251001-v1:0",
tools=[
create_premarket_checklist,
check_risk_limits,
create_trade_plan,
record_trade_journal,
create_end_of_day_review,
],
state={
"actor_id": TRADER_ID,
"session_id": SESSION_ID,
},
system_prompt="""You are a trader daily routine assistant with memory from past trading days.
Your role:
- Help the trader follow a disciplined daily routine
- Support pre-market preparation, risk review, trade planning, trade journaling, and end-of-day reflection
- Use past trading episodes to identify recurring process issues
- Apply reflections about discipline, risk control, execution quality, and emotional patterns
- Focus on process, risk management, and decision hygiene
- Do not provide financial advice, investment recommendations, price targets, or instructions to buy or sell securities
When you see [PAST TRADING EPISODE] context, use it to identify relevant process patterns.
When you see [TRADING REFLECTION] context, apply those learned discipline and risk-control patterns.
Always:
1. Start with risk limits before trade ideas
2. Require a pre-defined invalidation condition
3. Encourage position sizing before entry
4. Track whether the trader followed the plan
5. Identify emotional trading, revenge trading, overtrading, and averaging-down behavior
6. Encourage defined-risk structures where appropriate
7. Remind the trader that no trade is required if conditions are unclear
8. Keep outputs educational and process-focused, not advisory
Never:
1. Recommend buying, selling, shorting, or holding a specific asset
2. Predict market direction as certainty
3. Encourage leverage, martingale, doubling down, or revenge trading
4. Override risk limits
5. Treat unrealized recovery hopes as a valid risk plan""",
)
步驟1:使用⟦15⟧(⟦35⟧,客戶端)建立episodic_hooks。
步驟2:使用具有鉤子、模型、工具、狀態和⟦24⟧的代理創建⟦13⟧。
步驟3:新增工具:⟦3⟧、⟦18⟧、⟦19⟧、⟦12⟧、5⟧。
步驟4:用⟦42⟧和⟦32⟧設定⟦13⟧狀態。
步驟5:為交易例程、風險控制、日誌記錄和紀律定義⟦24⟧。
步驟6:建立⟦10⟧列表,用於播種之前的交易例程片段。
步驟7:新增1用於上市前準備、⟦57⟧事件、觀察清單和風險限額。
步驟8:新增會話2用於交易計畫、⟦66⟧標準化、流動性和跳過的交易日誌。
步驟9:新增時段3進行日終審核,持平⟦56⟧,遵守規則,無強制交易。
步驟10:新增會話4以進行損失回補交易警告、鞅避免和情緒控制日記。
步驟11:使用客戶端種子記憶體。 create_event與⟦35⟧、⟦42⟧、⟦30⟧和⟦10⟧。
步驟12:使用⟦13⟧測試上市前記憶體,並將結果儲存在⟦36⟧中。
步驟13:使用⟦13⟧測試風險限制召回,並將結果儲存在⟦37⟧中。
步驟14:使用⟦13⟧測試貿易計畫創建並將結果儲存在⟦38⟧中。
步驟15:使用⟦13⟧測試情緒交易模式並將結果儲存於⟦39⟧中。
步驟16:使用⟦13⟧測試貿易日誌記錄並將結果儲存在⟦40⟧中。
步驟17:使用⟦13⟧測試日終審核並將結果儲存於⟦41⟧中。
步驟18:將回覆存放在⟦23⟧中,以便筆記本審查而不列印。
system_prompt="""You are a trader daily routine assistant with memory from past trading days.
Your role:
- Help the trader follow a disciplined daily trading routine
- Support pre-market preparation, risk review, trade planning, trade journaling, and end-of-day review
- Use past trading episodes to identify recurring behavior patterns
- Apply reflections about discipline, execution quality, risk control, and emotional control
- Focus on process quality, not market prediction
- Do not provide financial advice, investment recommendations, price targets, or instructions to buy or sell securities
When you see [PAST TRADING EPISODE] context, use it to identify relevant process patterns.
When you see [TRADING REFLECTION] context, apply those learned risk-control and discipline patterns.
Always:
1. Start with risk limits before discussing trade ideas
2. Require a clear trade thesis before entry
3. Require a pre-defined invalidation condition
4. Require position sizing before execution
5. Track whether the trader followed the plan
6. Identify emotional trading, revenge trading, overtrading, and averaging-down behavior
7. Encourage defined-risk structures where appropriate
8. Remind the trader that no trade is required when conditions are unclear
Never:
1. Recommend buying, selling, shorting, or holding a specific asset
2. Predict market direction as certainty
3. Encourage leverage, martingale, doubling down, or revenge trading
4. Override risk limits
5. Treat hope or recovery trading as a valid plan
"""
交易員輸入:
將其記錄在我的貿易日記中:
儀器:⟦64⟧選擇權
動作:跳過交易
原因:買賣價差太大
結果:沒有進行任何交易
教訓:避免強行進入
交易員輸入:
讓我們來做一下我的日終回顧。
⟦56⟧持平。
我遵守我的規則。
主要錯誤:我看一個糟糕的設定太久了。
改進:定義監控低品質設定的時間限制。
# Step 14: Create trader daily routine agent
episodic_hooks = EpisodicMemoryHooks(memory_id, client)
trader_routine_agent = Agent(
hooks=[episodic_hooks],
model="global.anthropic.claude-haiku-4-5-20251001-v1:0",
tools=[
create_premarket_checklist,
check_risk_limits,
create_trade_plan,
record_trade_journal,
create_end_of_day_review,
],
state={
"actor_id": TRADER_ID,
"session_id": SESSION_ID,
},
system_prompt="""You are a trader daily routine assistant with memory from past trading days.
Your role:
- Help the trader follow a disciplined daily trading routine
- Support pre-market preparation, risk review, trade planning, trade journaling, and end-of-day review
- Use past trading episodes to identify recurring behavior patterns
- Apply reflections about discipline, execution quality, risk control, and emotional control
- Focus on process quality, not market prediction
- Do not provide financial advice, investment recommendations, price targets, or instructions to buy or sell securities
When you see [PAST TRADING EPISODE] context, use it to identify relevant process patterns.
When you see [TRADING REFLECTION] context, apply those learned risk-control and discipline patterns.
Always:
1. Start with risk limits before discussing trade ideas
2. Require a clear trade thesis before entry
3. Require a pre-defined invalidation condition
4. Require position sizing before execution
5. Track whether the trader followed the plan
6. Identify emotional trading, revenge trading, overtrading, and averaging-down behavior
7. Encourage defined-risk structures where appropriate
8. Remind the trader that no trade is required when conditions are unclear
Never:
1. Recommend buying, selling, shorting, or holding a specific asset
2. Predict market direction as certainty
3. Encourage leverage, martingale, doubling down, or revenge trading
4. Override risk limits
5. Treat hope or recovery trading as a valid plan""",
)
# Step 15: Seed past trading routine episodes
past_trading_sessions = [
# Session 1: Pre-market preparation and risk setup
(
"Let's prepare for today's trading session. I want to focus on index options and major macro events.",
"USER",
),
(
"I'll help structure the trading day around preparation, risk limits, and rule-based execution.",
"ASSISTANT",
),
(
"The main event today is the CPI release. I want to watch SPX, QQQ, and VIX closely.",
"USER",
),
("[TOOL: create_premarket_checklist]", "TOOL"),
(
"[RESULT: PRE-MARKET CHECKLIST: Market focus is index options. Key event is CPI. Watchlist includes SPX, QQQ, and VIX.]",
"TOOL",
),
(
"Pre-market checklist prepared. Please confirm your daily risk limits before considering any trade.",
"ASSISTANT",
),
(
"Maximum daily loss is 1.5% of account equity. Maximum single-trade loss is 0.5%. Margin usage should stay below 20%.",
"USER",
),
("[TOOL: check_risk_limits]", "TOOL"),
(
"[RESULT: RISK LIMIT REVIEW: Max daily loss 1.5%, max trade loss 0.5%, margin usage below 20%. No adding risk after losses.]",
"TOOL",
),
(
"Risk limits are recorded. Any trade idea should include entry condition, invalidation condition, and exit plan.",
"ASSISTANT",
),
# Session 2: Trade planning and execution discipline
(
"I am considering an options volatility trade after the event, but only if spreads tighten and IV starts to normalize.",
"USER",
),
(
"Let's turn that into a structured trade plan before any execution.",
"ASSISTANT",
),
("[TOOL: create_trade_plan]", "TOOL"),
(
"[RESULT: TRADE PLAN: Instrument is index options. Thesis is post-event volatility normalization. Entry requires spreads tightening and IV stabilization. Invalidation is IV expansion or liquidity deterioration. Exit plan is predefined risk reduction.]",
"TOOL",
),
(
"Good. I skipped the trade because spreads stayed too wide after the CPI release.",
"USER",
),
("[TOOL: record_trade_journal]", "TOOL"),
(
"[RESULT: TRADE JOURNAL ENTRY: Action taken was skipped. Reason was poor liquidity and wide spreads. Lesson was to avoid forcing trades after event volatility.]",
"TOOL",
),
(
"That was a disciplined decision. Skipping a low-quality setup protects the trading process.",
"ASSISTANT",
),
# Session 3: End-of-day review
(
"Let's do the end-of-day review. I had no trades today, but I followed the plan and avoided forcing entries.",
"USER",
),
("[TOOL: create_end_of_day_review]", "TOOL"),
(
"[RESULT: END-OF-DAY REVIEW: P&L flat. Rules followed. No forced trades. Improvement plan is to keep monitoring liquidity and avoid trading only because an event occurred.]",
"TOOL",
),
(
"Review completed. The key positive behavior was protecting capital by not trading when conditions were unclear.",
"ASSISTANT",
),
# Session 4: Risk control issue
(
"Yesterday I almost added size after a losing trade because I wanted to recover quickly.",
"USER",
),
(
"That is a process warning. Recovery trading and martingale behavior should be blocked by the trading plan.",
"ASSISTANT",
),
("[TOOL: record_trade_journal]", "TOOL"),
(
"[RESULT: TRADE JOURNAL ENTRY: Action was avoided. Reason was emotional urge to recover losses. Lesson was to stop trading after emotional activation and respect daily risk limits.]",
"TOOL",
),
(
"This pattern should be watched carefully. The rule is no increase in size after a loss and no trades made only to recover previous losses.",
"ASSISTANT",
),
]
client.create_event(
memory_id=memory_id,
actor_id=TRADER_ID,
session_id="seed_trading_session_001",
messages=past_trading_sessions,
)
# Step 16: Test trader daily routine scenarios
# Test 1: Follow-up on previous pre-market preparation
response1 = trader_routine_agent(
"Let's prepare for today's session. What should I review first based on my previous routine?"
)
# Test 2: Risk limit reminder
response2 = trader_routine_agent(
"Before looking at trade ideas, remind me what risk limits I usually define."
)
# Test 3: Trade planning discipline
response3 = trader_routine_agent(
"""I am watching SPX options after a macro event.
The setup only interests me if spreads tighten and volatility starts to normalize.
Can you help me structure this as a trade plan?"""
)
# Test 4: Emotional trading pattern
response4 = trader_routine_agent(
"I had a losing trade earlier and feel tempted to increase size to recover. What should I do according to my process?"
)
# Test 5: Trade journal entry
response5 = trader_routine_agent(
"""Record this in my trade journal:
Instrument: QQQ options
Action: skipped trade
Reason: bid-ask spread was too wide
Result: no trade taken
Lesson: avoid forcing entries when liquidity is poor"""
)
# Test 6: End-of-day review
response6 = trader_routine_agent(
"""Let's do my end-of-day review.
P&L was flat.
I followed my rules.
Main mistake: I kept watching a poor setup for too long.
Improvement: define a time limit for monitoring low-quality setups."""
)
# Step 17: Store test responses for notebook review without printing
test_responses = {
"premarket_followup": response1,
"risk_limit_reminder": response2,
"trade_plan": response3,
"emotional_trading_pattern": response4,
"trade_journal": response5,
"end_of_day_review": response6,
}
⟦47⟧ 風險衡量空頭跨式部位偏離中立性時所產生的定向暴露。治理應定義限制、監控頻率、避險觸發器以及增量超出容差時的升級規則。控制措施應考慮缺口變動、日內波動、分配風險及避險工具的流動性。報告應將計畫的再平衡與緊急幹預分開,確保決策記錄在案、及時且可在各種情況下進行審計。
⟦48⟧ 風險反映了 Delta 隨標的資產變動而變化的速度,使得空頭跨式位置容易受到價格劇烈波動的影響。治理應在接近到期時施加伽馬限制,定義調整閾值,並要求對突然跳躍進行情境分析。控制措施應阻止延遲避險,尤其是在快速市場期間。風險報告應強調凸度風險、避險滑點以及壓力下反覆再平衡造成的損失。
⟦53⟧ 風險捕捉了對隱含波動率變化的敏感性,即使沒有重大方向性變動,這也會損害空頭跨式地點。治理應設定波動性風險限額,監控事件日曆,並在財報、政策公告或假期之前限制部位。控制措施應比較已實現的波動性、隱含波動性和壓力波動性。報告應及時顯示波動性衝擊、偏差變化以及流動性對平倉或展期部位的影響。
當不利走勢或波動性擴大增加抵押品要求的速度快於資本部署的速度時,就會出現保證金風險。治理應定義最低緩衝、集中度上限、資金來源和強制削減規則。控制措施應在經紀商、交易所和內部壓力假設下測試保證金。報告應包括流動性過剩、利用趨勢、違規警告以及強制清算事件之前有序降低風險的程序。
流動性風險涉及進入、避險、展期或關閉空頭跨式房產而不會造成不可接受的市場影響的能力。治理應限制相對於選擇權數量、未平倉合約、買賣價差和標的物深度的部位規模。控制措施應限制市場混亂期間的交易。當相關交易場所的正常流動性突然消失時,報告應追蹤執行品質、滑點、退出時間估計和備份計畫。
壓力損失風險估計極端但可能的衝擊下投資組合的損害,包括價格差距、波動性飆升、相關性崩盤和流動性凍結。治理應該需要預先定義的場景、反向壓力測試和最大可容忍損失閾值。控制措施應將壓力結果與資本配置和部位減少聯繫起來。報告應解釋假設、最壞情況、恢復行動以及在惡劣條件下避險後的殘留風險。
反鞅行為意味著在損失後減少風險敞口,只有在經過驗證的風險承受能力提高後才增加風險敞口,而不是加倍下注。治理应禁止在违规期间追逐损失、不受控制的平均和头寸扩张。控制措施应将规模与资本、波动性、回撤和流动性指标联系起来。报告应识别重复调整、升级失败以及不利市场状况下与严格降低风险不一致的任何行为。
治理控制定義了空頭跨式專案風險決策的責任、權限、文件和獨立挑戰。政策應指定核准的工具、限制、監控節奏、異常處理、模型驗證和違規升級。委員會應審查績效、壓力結果和控制有效性。 Audit trails should preserve rationale, approvals, hedge actions, and post-incident lessons to support transparency and continuous improvement across the full risk lifecycle.