3.5 Visual ngôn ngữ lập trình thực hiện các chiến lược giao dịch

Tác giả:Tốt, Tạo: 2019-04-25 12:21:22, Cập nhật: 2019-04-27 11:53:56

Tóm lại

Trong phần trước, chúng tôi đã tìm hiểu về giới thiệu và đặc điểm của công cụ lập trình trực quan, ví dụ về " hello world " và viết chiến lược trên nền tảng giao dịch FMZ Quant để giải thích tiền đề thực hiện chiến lược giao dịch.

Mô-đun chiến lược

Thêm giai đoạn

Ví dụ: Tính toán tỷ lệ phân tán giai đoạn của các đường 10 K gần nhất, có thể viết:

img

Trong mã trên, cách một máy tính thực hiện chiến lược đòi hỏi một chu kỳ hoàn chỉnh, ví dụ: để tính toán bước tăng 10k cuối cùng, bạn cần phải được chia thành các bước sau:

Ví dụ, đặt mã hợp đồng vào this_week có nghĩa là giao dịch trên dòng k hàng tuần.

2, Sau khi thiết lập mã hợp đồng, bạn có thể có được dữ liệu dòng K của hợp đồng.

3, Với dữ liệu K-line, bạn có thể có được dữ liệu chi tiết của bất kỳ K-line cụ thể nào từ nó.

4, Để có được dữ liệu thống kê về tăng giai đoạn, trước tiên nó phải có được hai giá đóng K-line, ví dụ: dữ liệu giá đóng k-line trước và dữ liệu giá đóng k-line thứ 11 trước đó.

5, Cuối cùng, tính toán tăng giai đoạn từ giá đóng cửa 2 K-line này.

Mỗi chiến lược sau đây sẽ có một tuyên bố logic rõ ràng như ở trên, sau khi bạn hiểu tuyên bố logic, lập trình trực quan trở nên dễ dàng hơn nhiều.

Giá tăng với khối lượng giao dịch tăng mạnh

Ví dụ: Nếu giá đóng cửa dòng K hiện tại là 1,5 lần giá đóng cửa của 10 dòng K trước đó, có nghĩa là trong 10 ngày, giá đã tăng 50%; và khối lượng giao dịch cũng tăng hơn 5 lần so với 10 dòng K trước đó. có thể viết:

img

Khoảng cách giá tăng

Khoảng cách giá là trường hợp mà giá cao nhất và thấp nhất của hai đường K không kết nối. Nó bao gồm hai đường K, và khoảng cách giá là giá tham chiếu của các điểm hỗ trợ và áp lực trong chuyển động giá trong tương lai. Khi một khoảng cách giá xảy ra, có thể giả định rằng một sự tăng tốc dọc theo xu hướng với hướng ban đầu đã bắt đầu. có thể viết:

img

Các chỉ số phân tích kỹ thuật chung

  • Trung bình động

img

Từ quan điểm thống kê, trung bình động là trung bình số học của giá hàng ngày, đó là quỹ đạo giá xu hướng. Hệ thống trung bình động là một công cụ kỹ thuật phổ biến được sử dụng bởi hầu hết các nhà phân tích. Từ quan điểm kỹ thuật, nó là một yếu tố ảnh hưởng đến giá tâm lý của các nhà phân tích kỹ thuật.

img

  • Chỉ số MACD

img

Chỉ số MACD là một hoạt động làm mịn đôi bằng cách sử dụng trung bình động nhanh (kết hợp ngắn hạn) và chậm (kết hợp dài hạn) và tổng hợp và tách chúng. Chỉ số MACD được phát triển theo nguyên tắc trung bình động loại bỏ khuyết điểm mà trung bình động thường phát ra tín hiệu sai, và cũng giữ lại hiệu ứng của khía cạnh tốt khác. Do đó, chỉ số MACD có xu hướng và sự ổn định của trung bình động. Nó được sử dụng để nghiên cứu thời gian mua và bán cổ phiếu và dự đoán sự thay đổi giá cổ phiếu. Bạn có thể sử dụng nó như sau:

img

  • Chỉ số KDJ

Chỉ số KDJ là một chỉ số kỹ thuật được sử dụng để phân tích và dự đoán những thay đổi trong xu hướng cổ phiếu và mô hình giá trong một tài sản giao dịch.

KDJ là một dạng phái sinh của chỉ số dao động chứng khoán với sự khác biệt duy nhất là có một đường bổ sung gọi là đường J. Giá trị của đường %K và đường %D cho thấy nếu chứng khoán được mua quá mức (trên 80) hoặc bán quá mức (dưới 20).

img

Viết chiến lược

Người cố vấn của Warren Buffett, Benjamin Graham, đã từng đề cập trong cuốn sách <> một mô hình giao dịch trong đó cổ phiếu và trái phiếu được cân bằng năng động.

img

  • Mô hình giao dịch này rất đơn giản:

50% số tiền trong tay được đầu tư vào quỹ cổ phần, và 50% còn lại được đầu tư vào quỹ trái phiếu.

Sự cân bằng lại vị thế tài sản dựa trên các khoảng thời gian cố định hoặc thay đổi thị trường khôi phục tỷ lệ tài sản cổ phiếu đối với tài sản trái phiếu trở lại mức ban đầu là 1: 1.

Đây là toàn bộ logic của toàn bộ chiến lược, bao gồm cả khi mua và bán, và bao nhiêu để mua và bán.

Số 2

Trong phương pháp này, sự biến động của các quỹ trái phiếu thực sự rất nhỏ, thấp hơn nhiều so với sự biến động của cổ phiếu, vì vậy trái phiếu được sử dụng ở đây như anchor tham chiếu, nghĩa là sử dụng trái phiếu để đo lường liệu cổ phiếu có tăng quá nhiều hay quá ít.

Nếu giá cổ phiếu tăng, giá trị thị trường của cổ phiếu sẽ lớn hơn giá trị thị trường của trái phiếu. Khi tỷ lệ giá trị thị trường của hai loại này vượt quá ngưỡng đặt ra, tổng vị trí sẽ được điều chỉnh lại, cổ phiếu sẽ được bán và trái phiếu sẽ được mua để tỷ lệ giá trị cổ phiếu so với giá trị trái phiếu trở lại mức ban đầu 1: 1.

img

Ngược lại, nếu giá cổ phiếu giảm, giá trị thị trường của cổ phiếu sẽ thấp hơn giá trị thị trường của trái phiếu. Khi tỷ lệ giá trị thị trường của hai loại trái phiếu này vượt quá mức ngưỡng, tổng vị trí sẽ được điều chỉnh lại, cổ phiếu sẽ được mua và trái phiếu sẽ được bán để tỷ lệ vốn hóa thị trường của giá trị trái phiếu so với giá trị cổ phiếu được khôi phục trở lại mức ban đầu 1: 1.

Theo cách này, tỷ lệ giữa sự cân bằng năng động của cổ phiếu và trái phiếu là đủ để tận hưởng lợi nhuận của tăng trưởng cổ phiếu và giảm biến động tài sản.

Vì đây là một chiến lược hoàn chỉnh và chung, tại sao chúng ta không sử dụng nó trên thị trường tiền điện tử?

Số 3

  • Chiến lược cân bằng năng động tài sản Blockchain trong BTC

Chiến lược logic

Theo giá trị hiện tại của BTC, số dư tài khoản được giữ lại ở mức 5000 đô la tiền mặt và 0,1 BTC, tức là tỷ lệ ban đầu của tiền mặt so với giá trị thị trường BTC là 1: 1.

Nếu giá của BTC tăng lên $6000, nghĩa là giá trị thị trường BTC lớn hơn số dư tài khoản, và sự khác biệt giữa chúng vượt quá ngưỡng đã thiết lập, thì (6000-5000)/6000/2 coin được bán. Điều đó có nghĩa là BTC đã tăng giá và chúng ta cần đổi lại tiền mặt.

Nếu giá của BTC giảm xuống còn $ 4000, tức là giá trị thị trường BTC thấp hơn số dư tài khoản và sự khác biệt giữa chúng vượt quá ngưỡng đặt, mua (5000-4000)/4000/2 coin.

Bằng cách này, bất kể BTC được đánh giá cao hay mất giá, số dư tài khoản và giá trị thị trường của BTC luôn được giữ bằng động.

  • Điều kiện mua: Nếu giá trị thị trường của vị trí hiện tại trừ số dư có sẵn hiện tại là dưới 5% số dư có sẵn hiện tại, mở vị trí mua.

  • Điều kiện bán hàng: Nếu giá trị thị trường của vị trí hiện tại trừ số dư hiện có là lớn hơn 5% số dư hiện có, mở vị trí để bán.

Điều kiện tiên quyết

  • Giá thị trường hiện tại

  • Tài sản lưu hành

  • Tổng giá trị thị trường của đồng xu

  • Sự khác biệt giá trị của tiền fiat và tiền xu

Xây dựng chiến lược

  • Chương trình hình ảnh Bước 1

Chúng tôi tính toán bốn điều kiện tiền đề trên, và gán chúng cho mỗi biến khác nhau. khối mã là như thế này:

img

Lưu ý rằng tổng giá trị của các đồng xu là tổng giá trị thị trường của các đồng xu mà bạn đang nắm giữ. Phương pháp tính toán là tổng số vị trí hiện tại được nhân với giá mới nhất. Sự khác biệt trong tài sản là tổng giá trị thị trường của các đồng xu trừ số dư hiện có.

  • Chương trình hình ảnh Bước 2

Sau khi giao dịch hoàn thành, bạn cần phải viết logic giao dịch. Điều này không phức tạp như nó có vẻ. Nó không gì khác ngoài logic chiến lược ở trên, được thể hiện dưới dạng các khối mã.

Đó là, Nếu giá trị thị trường vị trí hiện tại trừ số dư có sẵn hiện tại là ít hơn 5% số dư có sẵn hiện tại, mở vị trí để mua. Nếu giá trị thị trường vị trí hiện tại trừ số dư có sẵn hiện tại là lớn hơn 5% số dư có sẵn hiện tại, mở vị trí để bán. như được hiển thị dưới đây:

img

Toàn bộ chiến lược dường như đã được viết, nhưng hãy nhận ra rằng chương trình được thực hiện từ trên xuống dưới và dừng lại sau khi thực hiện.

Nói cách khác, chương trình cần liên tục kiểm tra xem các điều kiện chiến lược đã đạt được hay không, và nếu như vậy, thực hiện logic, nếu không nó sẽ tiếp tục kiểm tra.

img

Kiểm tra lại chiến lược

Chiến lược lập trình trực quan không khác về cơ bản với các chiến lược được viết trong các ngôn ngữ lập trình khác. Nó cũng hỗ trợ kiểm tra dữ liệu lịch sử của các chu kỳ khác nhau và độ chính xác.

img

Để chăm sóc cho những người vẫn bối rối, chiến lược này đã được chia sẻ trên trang FMZ Quant Strategy Square và có thể được sao chép trực tiếp vào bảng điều khiển của bạn.

Kết thúc

Luật 10.000 giờ (Để trở thành một chuyên gia trong một công việc nhất định) luôn tồn tại, nhưng đối với một nhà giao dịch dựa trên không, không thể dành 10.000 giờ để nghiên cứu một lĩnh vực mới.

Với lập trình trực quan, bạn không cần phải ghi nhớ ngữ pháp viết của ngôn ngữ lập trình truyền thống khi bạn sử dụng các mô-đun hàm. Nền tảng FMZ Quant được thiết kế để giúp nhiều nhà giao dịch định lượng hơn để giảm rào cản nhập cảnh và tăng lợi ích của họ. Bất cứ ai cũng có thể trở thành một nhà giao dịch định lượng!

Tuy nhiên, lập trình trực quan như là một bước nhảy vọt để nhập lượng là hoàn toàn ổn, nhưng nó cũng có những hạn chế của riêng mình, chẳng hạn như không thể phát triển quá phức tạp và quá tinh tế chiến lược giao dịch.

Thông báo phần tiếp theo

Từ sự chuyên nghiệp của giao dịch định lượng, cho dù đó là ngôn ngữ M hay lập trình trực quan, tất cả đều chỉ là một ngôn ngữ chuyển tiếp bước vào thế giới giao dịch định lượng. Đặc điểm ngôn ngữ của chúng xác định những hạn chế trong phát triển chiến lược giao dịch, một số chiến lược phức tạp ít có khả năng đạt được. Các phần sau sẽ cho bạn thấy cách học ngôn ngữ JavaScript, đó là một ngôn ngữ lập trình cấp cao chính thức, đó là con đường bạn bước vào giao dịch định lượng cao cấp.

Các bài tập sau giờ học

  1. Cố gắng thực hiện các chỉ số Bollinger Bands trong lập trình trực quan.

  2. Cố gắng hoàn thành một chiến lược giao dịch bằng cách sử dụng mô-đun giao dịch trong phần này.


Thêm nữa