Chúc bạn một ngày mới vui khỏe và tốt lành, một năm mới an khang thịnh vượng và đạt được nhiều thành công.
Thời gian vừa rồi tôi quan sát thấy hoạt động trade quỹ FTMO trở nên phát triển và phổ biến trong cộng đồng trader.
Tôi có một số người bạn làm trader và có nghe mọi người trao đổi khá nhiều về chủ đề này. Trước đây tôi có nghe qua về quỹ này nhưng chưa có sự quan tâm với nó và không đánh giá cao. Tuy nhiên, bây giờ tôi lại có sự tò mò.
Sau khi tìm hiểu kỹ hơn về quỹ FTMO này, tôi nhận thấy nó có khá nhiều điều thú vị.
Có nhiều người lo ngại mô hình của FTMO và đặt ra nhiều câu hỏi, có người lo ngại FTMO không trả tiền, có người thì đang tìm và sử dụng các tip trick, vân vân. Tuy nhiên, điều tôi cảm thấy quan tâm nhất là challenge của FTMO: max daily loss: 5% - max loss: 10% - target profit: 10%
Tôi là một người làm nghiên cứu chuyên nghiệp, đã có hơn 5 năm liên tiếp nghiên cứu chuyên sâu trong lĩnh vực này, vậy mà khi nhìn thấy cái rule này, tôi thực sự choáng.
Bản thân tôi cảm thấy rule này khó khủng khiếp. Chân thành mà nói, tôi không có đủ sự tự tin có thể vượt qua được thử thách này. Thật sự với góc nhìn của tôi, nó quá khó.
Tuy nhiên, ở đời phàm cái gì khó thì nó lại mang tính kích thích. Mặc dù cảm thấy rule này là quá khó nhưng tôi lại rất muốn thử sức với nó. Trade một mình thì buồn nên tôi viết luôn loạt bài này. Trong các bạn, nếu có ai cũng tò mò hay quan tâm đến chủ đề này thì cùng thảo luận và trao đổi nhé.
Tôi dự tính bước một tôi sẽ trade thử nghiệm trên một tài khoản demo. Các rules sẽ được áp dụng đúng như FTMO. Nếu tài khoản demo này pass qua được thử thách, thì tôi sẽ buy in gói 100k của FTMO và trade real. Mọi lệnh trade và quá trình trade trên tài khoản demo này, tôi sẽ chia sẻ trong loạt bài viết này.
Với cá nhân tôi, từ trước tới giờ tôi luôn quản lý max drawdown của tài khoản ở mức 25-30% chứ chưa từng trade với mức max DD 10% cả. Vì vậy, thử thách của quỹ đối với tôi có thể nói là khó hơn lên trời với 4-5% drawdown/ngày và tổng 10%. Tôi phải xây dựng lại chiến lược giao dịch mới hoàn toàn với thử thách này, học lại mọi thứ từ đầu.
Khi trade tự do trên tài khoản cá nhân, mọi thứ dễ thở hơn nhiều. Nhưng khi trade quỹ, các điều kiện của quỹ ép buộc mình bắt buộc phải quản trị được vốn trong một điều kiện cực kỳ ngặt nghèo. Sở dĩ tôi chọn thực hành thử thách này là bởi vì muốn bản thân mình học cách làm việc của một nhà quản lý quỹ thực sự, chuyên nghiệp và bền vững chứ không phải để lấy phần chia lãi hay gì.
Trade quỹ sẽ giúp cho mình pro lên, đó là điều chắc chắn. Cứ tham chiếu các rule của quỹ mà vẫn trade ngon được, thì đích thị là pro chứ không đùa. Bản thân tôi đang cố gắng để có thể đạt được các tiêu chuẩn như vậy.
Hệ thống mà tôi xây lần này là mới toanh, nó xây lên từ con bot mà tôi đã share ở đây trong comment trước.
Nó thực sự là tung xu theo cái mode random trong com bot đó, tôi không làm gì để tìm lợi thế vào lệnh cả. Việc thoát lệnh cũng không có phân tích nào cả. Mỗi lệnh đều độc lập. Được set sltp ngay khi vào lệnh. Tôi chỉ làm duy nhất là chạy trailling stop khi lệnh có lãi, nếu không lãi thì SL sẽ làm việc phải làm.
Bằng việc kiểm soát PnL, tôi đã kiểm soát được winrate của mình luôn cao hơn 75%. Và cũng qua backtest, tôi đạt được max consecutive loss vào khoảng 4 lệnh.
Việc còn lại là tôi quản trị đi tiền cho xác suất này. Vì vậy, bản chất vào lệnh ra lệnh trong hệ thống của tôi không còn liên quan tới signal nữa, vì thế mà tôi không còn dùng đến các phương pháp phân tích nữa.
Thứ duy nhất tôi phân tích bây giờ là chính kết quả giao dịch của mình, chứ không phải là bất kì điều gì liên quan tới market.
Chính xác là tôi đang sử dụng property là consecutive loss để vận hành chiến lược này. Những thông số mà bạn nói hoàn toàn đúng, cái này rất dễ làm khảo sát để biết.
Việc mà tôi đang cố gắng làm đó là chứng minh thắng hay thua trong trading hoàn toàn không phụ thuộc vào market hay các yếu tố khách quan, mà nó phụ thuộc vào mình, chủ quan. Và key ở đây không phải là make a trade(giao dịch mua bán), mà là control a position(quản trị).
Khi có thể chứng minh thắng hay thua là do mình, thì game này mới chơi dài hạn được.
----Tôi vẫn đang forward test hệ thống giao dịch, đã gần được một nửa số lệnh cho đợt test này.
Có vẻ như có một sự ổn định trong cả việc tăng trưởng lẫn thua lỗ. Tuy nhiên, trong backtest của tôi có giai đoạn reach out tới 4-5 lệnh lỗ liên tiếp, tôi đang chờ đợi xem nó có xảy ra trong đợt test này không và khi nó xảy ra thì hướng mà tôi định xử lý có đủ tốt hay không.
Quan sát winrate ở đây quả thật là một con số rất cao. Tuy nhiên điều này không có gì ngạc nhiên, bởi vì tôi đã chủ đích lấy winrate này bằng cách thay đổi RR. Risk của tôi là 4, còn reward chỉ có 1 thôi.
Điều này chứng minh rằng, bạn hoàn toàn có thể chủ động thay đổi winrate theo cách bạn muốn, bằng cách điều chỉnh hệ RR. Còn làm gì với winrate đó, thì đó là plan của bạn.
Mục đích tôi điều chỉnh RR này không có gì ngoài việc tăng winrate, tăng khả năng tiếp cận lệnh thắng nhanh hơn lệnh thua. Vấn đề của lệnh thua sẽ phải được xử lý bằng quản trị vòng ngoài. Điều này chứng minh rằng, nếu bạn biết bạn đang làm gì, biết cộng trừ tiền lời lỗ, khối lượng giao dịch, biết tổ chức một kết hoạch, thì mọi yếu tố để thắng đều là trong tay bạn, không phải ở ngoài.
Sau một chuỗi ngày làm khảo sát, tôi đã lựa chọn được một số thuộc tính để khai thác. Tiếp theo là giai đoạn chạy backtest để lấy dữ liệu.
Con bot beodat của tôi có tổng cộng 7 chế độ signal khác nhau, ý tưởng ở đây là tôi sẽ chạy backtest với tất cả các chế độ này, sau đó trộn tất cả kết quả lại với nhau thành một cái tổng hợp. Từ lịch sử tổng hợp này, tôi sẽ lọc và phân loại các lệnh thắng ra một danh sách và lệnh thua ra một danh sách riêng.
Bước tiếp theo là đem tất cả các danh sách này huấn luyện mô hình Machine Learning. Tôi muốn dạy cho ML học các đặc điểm của lệnh thắng là như thế nào, đặc điểm của lệnh thua là ra sao, truy ngược lại điều tra ngữ cảnh trước khi các lệnh thắng/thua đó xảy ra. Việc này nếu để con người làm với sức chạy bằng cơm thì gần như không thể. Tôi cũng không kì vọng cao với ML ở giai đoạn này, trước mắt cứ thực hiện các quy trình và lấy kết quả đã.
Trade kiếm cơm không phải là mục tiêu của tôi. Cái sản phẩm đó có thể tin cậy được để vận hành lâu dài, tự động, và ổn định được hay không mới quan trọng. Nó phải trade bằng trí tuệ của tôi, đạt được hiệu suất tốt hơn chính tôi và phải tốt hơn rất nhiều lần. Sau đó, tôi có thể để cho nó làm việc thay tôi, và tôi chỉ cần quản lý vấn đề điện nước, mạng internet cho nó thôi.
AI = Artificial Intelligence = Artificial(Nhân tạo) + Intelligence(Trí tuệ)
AI nó chỉ là một công nghệ, và công nghệ chỉ là một công cụ mà thôi. Công cụ thì chỉ có chức năng hỗ trợ. Cái core ở đây vẫn là phần trí tuệ, nghĩa là phần tư duy, không liên quan gì tới công nghệ. Mà phần Trí tuệ này, nó chiếm tới 99% giá trị của hệ thống.
Tôi sử dụng DRL để xây dựng hệ thống, bởi vì nó cho phép tôi mô tả một thế giới (Environment) mà ở đó, tôi là một trade non xanh có thể thực hiện tất cả các loại lệnh giao dịch, thu lấy tất cả mọi loại kết quả có thể có. Rồi sử dụng tất cả các phương pháp thống kê xác suất, để tìm ra cái trade nào trong thời điểm nào thì cho lợi ích tiềm năng lớn nhất.
Như vậy, bản chất ở đây nằm ở cách mà tôi mô tả thế giới đó như thế nào. Có đủ khách quan, khái quát, sát thực hay không. Và hệ thống chỉ làm việc dựa treen cách đánh giá và nhìn nhận những mô tả này. Vì thế, nếu tôi đã trade tay ăn được tiền, thì tôi hoàn toàn có thể xây hệ thống để nó kiếm tiền như thế, và kiếm ra nhiều tiền hơn.
Cuối cùng, nếu tôi tin nó, thì tôi sẽ sử dụng gợi ý của nó làm quyết định của mình. Nếu không tin, thì hệ thống có thế nào cũng bỏ đi. Bản chất của DRL hay ở chỗ, khi bạn tìm cách để dạy cho nó hiểu vấn đề, thì chính bạn đã phải trở thành master của vấn đề đó rồi.
Bạn cứ vào 1000 lệnh, thì tự nhiên sẽ có đám lệnh thắng và đám lệnh thua, chứ không phải tất cả đều thua. Như vậy, thắng thua đều nằm trong kết quả giao dịch cả rồi. Vấn đề ở đây không phải là không thể thắng, mà là bạn có khả năng để diễn giải được bạn đã thắng trong ngữ cảnh thế nào không.
Diễn giải một ngữ cảnh chẳng qua là việc tập hợp thông tin để khái quát về một vấn đề. Có nghĩa là, cùng một lúc phải ghi nhớ, tính toán, xử lý một tập hợp rất lớn các tham số đầu vào. Con người làm việc này không tốt bằng máy, nhưng con người mới là chủ nhân chỉ thị cho cái máy cần phải phân tích những thông tin nào.
AI không là gì cao siêu, nó chỉ là công cụ để diễn giải tư duy của một người về một vấn đề. Nên nếu phương pháp tư duy chưa đúng, thì thay vì tạo ra cái gì đó có ích, nó sẽ tạo ra một cục shit siêu to khổng lồ.
Làm AI không khó, sự thật là nó dễ đến ngỡ ngàng, mà một người bình thường không cần biết gì về lập trình hay công nghệ cũng có thể trở thành chuyên gia trong thế giới AI. Vì nó không phải là công nghệ thông tin nữa, nó là công nghệ tư duy. Phần công nghệ chỉ còn đóng vai trò 1% mà thôi.
Ngày trước tôi làm miết nhưng không thể nào có kết quả, bởi vì tôi luôn nghĩ rằng thị trường này nó ngẫu nhiên 100%. Và với cái gì là ngẫu nhiên, thì thánh cũng không dự được.
Gần đây, có người cho tôi một keyword hay quá, giúp tôi nhìn vấn đề theo cách khác, và theo cách nhìn đó tôi lại thấy có hi vọng nên quay lại làm tiếp.
Cách nhìn mới của tôi bảo tôi rằng, thị trường này nó không hề ngẫu nhiên. Và một khi nó không ngẫu nhiên, thì chắc chắn nó có một số mô hình nào đó, phục vụ cho một ý đồ nào đó. Và nếu chấp nhận quan điểm này, thì chắc chắn có thể dự được.
Việc tôi đang làm là cố gắng nhận diện ra các mô hình không ngẫu nhiên nay mà thôi.
Một lý do quan trọng nữa khiến tôi nhất định phải làm cái hệ thống này, đó là sự lựa chọn cầm thanh kiếm nào vào trận.
Tôi không thích RR, bởi vì thanh kiếm đó thì chơi thủ công là được rồi. Học thuộc binh pháp, chăm chỉ tu luyện là thành cao thủ chứ không cần auto.
Tôi muốn chơi bằng Winrate, dùng RR 11 luôn. Bởi vì như vậy mới tận dụng được sức mạnh của bọn máy tính. Bởi vì cá nhân tôi thì không thể nào nhìn vấn đề bao quát và chuẩn xác như nó. Và quan trọng nhất là nó không break the rules như tôi. Chơi hệ Winrate là chơi sòng phẳng, chẳng phải nghĩ hơn thiệt về RR. Khi test model cũng dễ tùy chỉnh và đánh giá.
Hoặc là con bot phải đạt winrate lớn hơn 60%, hoặc là nó sẽ bị thải vào sọt rác. Chừng nào tìm ra được con nào có winrate ít nhất 60%, thì con model đó sẽ được nhập kho.
Sau khi train qua 4000 episodes, với batch_size = 50 (nó kiểu như cho Agent đi học 4 nghìn ngày, mỗi ngày học 50 ca, trên biểu đồ H1, của vàng), thì tôi mở tensorboard lên xem tình hình con Agent học hành thế nào rồi.
Bất ngờ hơn sự mong đợi của tôi. Kết quả này cho thấy một điề vô cùng quan trọng với tôi, rằng liệu cách làm nay có hiệu quả và có hi vọng hay không.
Biểu đồ thứ 2 từ trái qua, là giá trị profit trung bình. Đường line đó thể hiện nó có tạo ra lợi nhuận tịnh tiến theo thời gian học tập.
Biểu đồ số 1 và số 3, cho thấy con Agent vẫn đang trong quá trình học tập non nớt. Rất nhiều sai sót, rất nhiều lỗi lầm còn phải lấy kinh nghiệm.
Biểu đồ cuối cùng cho thấy, con Agent vẫn đang trong giai đoạn dò đường (exploration). Nó liên tục gia tăng số lệnh trong mỗi phiên huấn luyện để tăng khả năng khám phá. Khi nào cái đường này bắt đầu đi ngang ngang một chút, thì lúc đó xét tiếp. Đây mới đang là giai đoạn R&D mà thôi. Tôi chưa expect gì nhiều bây giờ, còn phải làm nhiều việc nữa cơ.
Nói chung quá trình training thì nó không khác gì dạy học cả. Bạn dạy một người học một vấn đề nào đó, cũng giống như dạy cho cái máy vậy thôi. Ngôn ngữ dạy có thể khác nhau, nhưng phương pháp dạy và cách theo dõi, điều chỉnh chất lượng thì vẫn thế.
Điều này có nghĩa là, trong thời đại của AI, bạn không cần biết code để làm AI. Phần này dễ lắm, rồi sẽ có luôn hết các API, các Frameworks, cà Libraries hỗ trợ cho bạn từ A-Z. Bạn sẽ chỉ mất một ngày để có tất cả. Cái cuối cùng và quan trọng nhất, vẫn là giáo trình của bạn. Bạn hiểu một vấn đề như thế nào, và bạn định dạy cho một ai đó về vấn đề đó, hoàn toàn không có liên quan gì tới máy tính cả.
Hi vọng những phần cập nhật của tôi có thể tạo cảm hứng cho các bạn tìm hiểu về AI. Theo góc nhìn cá nhân của tôi, trong vòng nửa thập kỷ tới, AI sẽ tràn ngập vào cuộc sống ở mọi lĩnh vực, ngành nghề, quy mô. Chúng ta đang sống trong thời đại mà AI sẽ là một công cụ phổ thông như một cái tivi. Khi bạn không có, không biết, không làm AI, thì ở thời đại mới đấy, bạn giống như không có một chiếc tivi vậy. Hãy vọc AI đi nhé, vì nó không khó đâu. Và nó không phải là chuyên môn công nghệ đâu, nó là cuộc sống đấy.
Kết quả giao dịch có chứa lệnh thắng, lệnh thua. Có thể sử dụng chính thắng thua đó để làm label cho các mô hình supervised learning. Đó là một cách để áp dụng, ngoài ra có nhiều cách khác nữa.
Nếu lịch sử giao dịch đủ nhiều (ít nhất đơn vị nghìn lệnh), của một chiến lược nhất quán xuyên suốt từ đầu tới cuối, thì có thể đem đi huấn luyện cho cái máy.
Chiến lược đó không cần phải thắng. Nó chỉ cần là một chiến lược nhất quán, tỉ lệ winrate thấp 20-30% cũng được, thua tè le cháy tè le cũng được, miễn là nó phải nhất quán, được giao dịch trên một quy tắc rõ ràng.
Bởi vì, chỉ cần có quy tắc, cái gì sai với nó, hay cái gì đúng với nó, sẽ tự phân loại. Sau đó, dạy cho cái máy học những mô hình đó là được.
Tuy nhiên việc có được một lịch sử cỡ nghìn lệnh mà nhất quán, thì e là người bình thường không có nổi. Cho nên, cần phải mô tả chiến lược rõ ràng, rồi thực hiện backtest để lấy dữ liệu nghiên cứu. Cơ bản có vậy thôi. Backtest là công cụ để nghiên cứu, chứ không phải công cụ để mấy thanh niên code bot cỏ rồi đi ghè thiên hạ, làm một số trader non nghề lại nhầm lẫn backtest ngon là trade ngon thì chết toi.
Tôi đã fix bug xong và hoàn thiện hệ thống của mình, vừa kịp tháng mới có thể tiến hành làm test tiếp.
Câu chuyện bắt đầu từ tháng 3, tới tận bây giờ tháng 8 vẫn chưa xong hết. Các bạn thấy đó, phát triển một hệ thống giao dịch đúng không phải là một việc đơn giản. Đây là tôi đã dành toàn bộ thời gian của mình vào công việc rồi đấy. Tôi chỉ ăn, dắt sếp đi dạo, ngủ, và làm việc, vậy mà vẫn ngốn thời gian kinh khủng khiếp. Chưa kể, trước khi vào việc, tôi đã có tới 6 năm làm việc chuyên nghiệp trong ngành như vậy rồi. Trading chưa bao giờ là dễ, bạn nhỉ.
Về cơ bản, tôi cảm thấy hài lòng với kết quả làm việc của mình. Ngày mai vừa đẹp đầu tuần đầu tháng để làm đợt test mới. Lần này, tôi sẽ không test với tài khoản Trial của FTMO nữa, thay vào đó tôi sẽ test trên tài khoản MetaQuotes. Bởi vì FTMO chỉ cho 15 ngày trial, trong khi thực tế là có 30 + 15 = 45 ngày (nếu có lãi 5% và xin gia hạn). Việc test với tài khoản MetaQuotes sẽ đảm bảo đúng với thực tế hơn so với test trên tài khoản Trial của FTMO. Thậm chí là khó hơn, vì spread của MetaQuotes lớn hơn FTMO rất nhiều.
Điểm mới trong lần test này, là tôi sẽ test cùng một lúc nhiều tài khoản. tài khoản trade AUDJPY. tài khoản trade EURUSD. tài khoản trade CADCHF. tài khoản trade XAUUSD. tài khoản trade hỗn hợp
Mục tiêu test là pass qua hết cả 5 tài khoản này. Nếu trượt chỉ một tài khoản cũng coi như là test thất bại. Vì FTMO có rule cho thi lại nếu ko bị thua lỗ, nên có thể pass từng đợt. Ví dụ đợt đầu chỉ có 1-2 acc pass, 3 acc chưa pass thì thi lại đến khi nào pass thì thôi. Nhưng mục tiêu là phải pass cả 5 acc này.






Nhận xét
Đăng nhận xét