
Lumibot là một framework Python mã nguồn mở dành cho backtesting, giao dịch mô phỏng và thực thi các chiến lược giao dịch thuật toán. Framework này hỗ trợ các quy tắc Python truyền thống, tác nhân giao dịch AI và kết nối với nhà môi giới. Hướng dẫn này xem xét các phương thức chiến lược, dữ liệu lịch sử, cơ chế thực thi có nhận biết nhà môi giới và các đội giao dịch AI của Lumibot, giúp nhà phát triển và nhà giao dịch định lượng đánh giá các hệ thống giao dịch tự động.
Lumibot công bố hỗ trợ 12 tích hợp nhà môi giới, bao gồm Alpaca, Interactive Brokers (IBKR) và Tradier, với khả năng khác nhau tùy từng thị trường.
Lumibot yêu cầu Python 3.10 trở lên và hỗ trợ cổ phiếu, quyền chọn, hợp đồng tương lai, ngoại hối, tiền mã hóa và thị trường dự đoán.
Cùng một lớp chiến lược có thể chạy backtest lịch sử, giao dịch mô phỏng và giao dịch trực tiếp mà không cần viết lại logic giao dịch cốt lõi.
Môi trường chạy tác nhân AI tích hợp của Lumibot hỗ trợ tác nhân nghiên cứu, tác nhân phe tăng và phe giảm, tác nhân rà soát rủi ro và tác nhân giao dịch cuối cùng.
Kiểm thử lịch sử, mô phỏng khớp lệnh sát thực tế và xác thực ngoài mẫu giúp đánh giá chiến lược nhưng không thể đảm bảo khả năng sinh lời trong tương lai.
Lumibot là một framework giao dịch Python thực tế do Lumiwealth phát triển. Kiến trúc hướng sự kiện của nó kết nối dữ liệu thị trường, logic chiến lược, tài khoản môi giới và quá trình thực thi lệnh.
Khác với các dự án giao dịch tách biệt nghiên cứu, backtesting và thực thi thành những hệ thống không liên quan, Lumibot nhấn mạnh tính nhất quán từ nghiên cứu đến giao dịch trực tiếp thông qua các lớp chiến lược có thể tái sử dụng.
Kho mã Lumibot chính thức tài liệu hóa các tích hợp nhà môi giới, công cụ kiểm thử lịch sử và các dự án giao dịch AI của framework.
Các thành phần Python cốt lõi bao gồm:
| Thành phần | Chức năng |
|---|---|
| Strategy | Xác định logic giao dịch và các phương thức vòng đời |
| Asset | Đại diện cho cổ phiếu, tiền mã hóa, quyền chọn hoặc công cụ khác |
| Data | Lưu trữ thông tin thị trường lịch sử |
| Trader | Điều phối việc thực thi chiến lược |
| Alpaca | Kết nối chiến lược giao dịch với tài khoản môi giới Alpaca |
| YahooDataBacktesting | Chạy mô phỏng lịch sử bằng dữ liệu giá từ Yahoo Finance |
Nhà phát triển nhập các thành phần này thông qua những mô-đun như lumibot.strategies, lumibot.entities, lumibot.traders và lumibot.brokers.
Các phương thức chiến lược như initialize() và on\_trading\_iteration() xác định phần thiết lập và hành vi giao dịch. Cấu trúc chiến lược có nhận biết nhà môi giới này cho phép cùng một chiến lược Lumibot hoạt động trong nhiều môi trường được hỗ trợ.
Lumibot hỗ trợ backtesting trong ngày và qua nhiều ngày bằng dữ liệu thị trường lịch sử. Trình backtest dựa trên Pandas có thể sử dụng các bộ dữ liệu tùy chỉnh tương thích, trong khi Yahoo Finance, Polygon.io và các nhà cung cấp được hỗ trợ khác cung cấp thông tin thị trường.
Framework cũng bao gồm khả năng kết nối tiền mã hóa dựa trên CCXT, mặc dù cần xác minh riêng việc hỗ trợ từng sàn giao dịch và công cụ.
| Khả năng | Phương thức được hỗ trợ |
|---|---|
| Kiểm thử lịch sử | Yahoo Finance, Polygon.io, Pandas/CSV, nhà cung cấp chuyên biệt |
| Bộ dữ liệu tùy chỉnh | Dữ liệu chuỗi thời gian do người dùng kiểm soát |
| Nhà môi giới trực tiếp | Alpaca, IBKR, Tradier và các tích hợp được hỗ trợ |
| Kết nối tiền mã hóa | API sàn giao dịch được hỗ trợ và tích hợp CCXT |
| Thư viện Python | Pandas, NumPy và các thư viện chỉ báo kỹ thuật |
| Triển khai | Môi trường cục bộ hoặc hạ tầng đám mây đã cấu hình |
| Chế độ thực thi | Backtesting, giao dịch mô phỏng, giao dịch trực tiếp |
Các sàn giao dịch tiền mã hóa mạnh thường cung cấp API cho dữ liệu thị trường và đặt lệnh. Lumibot có thể sử dụng các tích hợp tương thích để tự động hóa giao dịch, nhưng khả năng kết nối không có nghĩa là mọi sàn giao dịch đều được hỗ trợ.
Alpaca và các nhà môi giới tương tự có thể cung cấp môi trường giao dịch không hoa hồng cho những sản phẩm đủ điều kiện. Các khoản phí khác, chênh lệch giá và hạn chế pháp lý vẫn có thể áp dụng.
Mô phỏng khớp lệnh sát thực tế đặc biệt quan trọng khi kiểm thử chiến lược giao dịch trong ngày và lệnh giới hạn. Mô phỏng lịch sử nên tính đến trượt giá, độ trễ, phí và thanh khoản.
Để so sánh, Backtesting.py là một thư viện Python nhẹ theo hướng sự kiện, phù hợp với các dự án backtesting nhỏ hơn, trong khi Lumibot kết hợp backtesting với khả năng thực thi rộng hơn qua nhà môi giới và các tính năng tác nhân AI.
Lumibot bao gồm môi trường chạy tác nhân giao dịch AI tích hợp, cho phép các tác nhân chuyên biệt kiểm tra điều kiện thị trường, thực hiện nghiên cứu, gọi công cụ bên ngoài và đánh giá cơ hội giao dịch.
Một đội giao dịch AI đầy đủ hoạt động bên trong một lớp con chiến lược thông thường. Luồng tác nhân của nó có thể kết hợp các quy tắc Python xác định với các quyết định do AI tạo ra.
Theo tài liệu tác nhân AI của Lumibot, nhà phát triển có thể cấu hình nhiều tác nhân với các trách nhiệm khác nhau.
| Tác nhân | Trách nhiệm |
|---|---|
| Tác nhân nghiên cứu | Thu thập bằng chứng kỹ thuật, cơ bản và lịch sử |
| Tác nhân phe tăng | Xây dựng luận điểm giao dịch tăng giá mạnh nhất |
| Tác nhân phe giảm | Phản biện luận điểm và xác định rủi ro giảm giá |
| Tác nhân rà soát | Đánh giá bằng chứng, giả định và kiểm soát rủi ro |
| Nhà giao dịch hoặc quản lý danh mục | Xem xét vị thế, số dư tài khoản và các lệnh tiềm năng |
| Tác nhân cuối cùng | Gửi lệnh khi được cấp quyền giao dịch rõ ràng |
Trong các ví dụ về đội giao dịch, tác nhân nghiên cứu thu thập bằng chứng trước khi các tác nhân phe tăng và phe giảm tranh luận về cơ hội. Tác nhân giao dịch sau đó quyết định mua, bán hay nắm giữ.
Mỗi tác nhân nhận cùng một bối cảnh thị trường, được bổ sung bằng kết quả nghiên cứu trước đó hoặc đầu ra từ tác nhân rà soát.
Do đó, một luồng nghiên cứu chuyên biệt có thể hỗ trợ cả chiến lược một tác nhân lẫn triển khai đội giao dịch AI nhiều lớp bằng Lumibot.
Một số lời nhắc minh họa yêu cầu tác nhân tìm giao dịch có khả năng kiếm tiền mạnh nhất hoặc sử dụng gần như toàn bộ tiền mặt. Những ví dụ mang tính tích cực cao này nhằm minh họa quyền hạn và cơ chế thực thi của tác nhân, chứ không phải phương pháp quản lý rủi ro được khuyến nghị.
Chỉ tác nhân cuối cùng được kích hoạt giao dịch mới nên có quyền gửi lệnh nếu chiến lược được thiết kế theo mô hình phân tách trách nhiệm như vậy.
Lumibot yêu cầu Python 3.10 trở lên. Nhà phát triển có thể cài đặt framework và chạy bản demo trước khi kết nối tiền thật.
pip install lumibot lumibot demo Bản demo ban đầu sử dụng dữ liệu lịch sử và không yêu cầu thông tin đăng nhập nhà môi giới.
Sau đó, nhà phát triển có thể khởi tạo và kiểm thử một dự án giao dịch AI:
lumibot init my-bot --template ai lumibot backtest my-bot --days 90 lumibot run my-bot --paper Một chiến lược AI đã cấu hình cần khóa AI phù hợp, trong khi giao dịch mô phỏng có kết nối nhà môi giới có thể yêu cầu cả thông tin xác thực AI và Alpaca.
Ví dụ, các lệnh import Python có thể bao gồm:
from lumibot.strategies import Strategy from lumibot.entities import Asset from lumibot.traders import Trader from lumibot.brokers import Alpaca Một chiến lược AI cũng có thể tạo tác nhân thông qua self.agents.create() và gọi chúng trong on\_trading\_iteration().
Nếu thiếu thông tin xác thực mô hình, hệ thống nên trả về lỗi khóa nhà cung cấp rõ ràng thay vì âm thầm cấp quyền cho một nhà cung cấp khác.
Nhà phát triển nên kiểm thử hành vi tác nhân, quyền thực thi và giới hạn rủi ro trước khi bật lệnh giao dịch trực tiếp.
Backtesting rất quan trọng đối với giao dịch thuật toán, nhưng kết quả có lãi trong quá khứ không xác lập hiệu suất kỳ vọng trong tương lai.
Chiến lược nên trải qua xác thực ngoài mẫu, kiểm thử thực thi sát thực tế và giao dịch mô phỏng trước khi triển khai.
Quyết định của tác nhân AI cũng cần có lịch sử kiểm toán vì phản hồi của mô hình mới có thể thay đổi giữa các lần chạy.
Lumibot hỗ trợ nghiên cứu cộng tác và các dự án giao dịch có thể chia sẻ, mặc dù giao dịch sao chép xã hội không phải trọng tâm chính.
Giao dịch ký quỹ và đòn bẩy làm tăng mức độ phơi nhiễm thông qua vốn vay, qua đó khuếch đại cả lợi nhuận tiềm năng lẫn thua lỗ. Tác nhân AI không nên tự ý ghi đè các giới hạn vị thế đã xác định trước.
Cổ phiếu token hóa có thể đại diện cho các quyền lợi trên blockchain liên quan đến chứng khoán truyền thống, nhưng quyền sở hữu, mức độ tiếp xúc phân đoạn và cách xử lý theo quy định phụ thuộc vào tổ chức phát hành và cấu trúc sản phẩm.
Nhà giao dịch đánh giá các chiến lược tiền mã hóa tự động có thể xem giá thị trường, thanh khoản và tình trạng sổ lệnh thông qua Gate Spot.
Nền tảng bot giao dịch Gate cũng cung cấp các chiến lược tự động có thể cấu hình và công cụ backtesting cho những thị trường được hỗ trợ.
Các công cụ này cung cấp điểm tham chiếu thực tế để đánh giá chiến lược, nhưng không nên mặc định rằng chúng hỗ trợ tích hợp Lumibot gốc. Quyền API, khả năng tương thích thị trường và rủi ro thực thi cần được xác minh độc lập.
Lumibot kết hợp backtesting Python, thực thi chiến lược có nhận biết nhà môi giới và giao dịch AI đa tác nhân trong một framework có thể tái sử dụng. Ưu điểm chính của nó là duy trì logic chiến lược nhất quán giữa kiểm thử lịch sử, giao dịch mô phỏng và các môi trường giao dịch trực tiếp được hỗ trợ.
Nhà phát triển có thể tùy chỉnh tác nhân nghiên cứu, quản lý danh mục và kiểm soát rủi ro trong khi vẫn tiếp tục sử dụng các chiến lược thuật toán truyền thống. Tuy nhiên, triển khai đáng tin cậy vẫn phụ thuộc vào chất lượng dữ liệu thị trường, kiểm thử thực thi, bảo mật và quản lý rủi ro có kỷ luật.
Lumibot công bố hỗ trợ 12 tích hợp nhà môi giới, bao gồm Alpaca, Interactive Brokers và Tradier. Mỗi nhà môi giới khác nhau về thị trường được hỗ trợ, loại lệnh và khả năng giao dịch trực tiếp.
Có. Lumibot hỗ trợ tích hợp dữ liệu Yahoo Finance và Polygon.io, đồng thời có khả năng kết nối tiền mã hóa dựa trên CCXT. Các bộ dữ liệu Pandas tùy chỉnh cũng có thể được sử dụng cho mô phỏng lịch sử.
Có. Cùng một lớp chiến lược có thể được tái sử dụng cho cả backtesting và thực thi trực tiếp. Cấu hình khởi động, nhà cung cấp dữ liệu, kết nối nhà môi giới và thông tin xác thực phải được chọn cho từng chế độ.
Có. Lumibot hỗ trợ cả chiến lược một tác nhân và đội giao dịch đa tác nhân. Các tác nhân được ủy quyền có thể gửi lệnh thông qua kết nối nhà môi giới đã cấu hình, tùy thuộc vào quy tắc thực thi và quyền tài khoản.
Có. Lumibot có thể hoạt động trong môi trường Python cục bộ phù hợp hoặc trên hạ tầng đám mây đã cấu hình. Yêu cầu triển khai phụ thuộc vào chiến lược, nhà cung cấp dữ liệu, kết nối nhà môi giới và cơ chế giám sát.











