Chiến lược mua vào đầu tháng và đóng vào cuối tháng


Ngày tạo: 2023-11-02 14:23:40 sửa đổi lần cuối: 2023-11-02 14:23:40
sao chép: 0 Số nhấp chuột: 619
1
tập trung vào
1617
Người theo dõi

Chiến lược mua vào đầu tháng và đóng vào cuối tháng

Ý tưởng cốt lõi của chiến lược này là mở nhiều vị trí vào ngày giao dịch đầu tiên của mỗi tháng và giảm vị trí vào ngày giao dịch cuối cùng. Đây là một chiến lược rất đơn giản, chủ yếu được sử dụng để giảng dạy.

Nguyên tắc chiến lược

Chiến lược này bắt đầu bằng việc xác định ngày giao dịch đầu tiên của tháng (thứ Hai) là tín hiệu mở vị trí và ngày giao dịch cuối cùng (Thứ Sáu) là tín hiệu đóng vị trí.

Khi mở vị trí, nếu mở chỉ có nhiều thiết lập, hãy làm nhiều; nếu cho phép làm trống, hãy mở vị trí và làm thêm trống.

Trong trường hợp bình thường, nếu được phép làm trống, bạn sẽ xóa tất cả các vị trí; nếu chỉ làm nhiều, bạn sẽ chỉ xóa nhiều vị trí.

Để kiểm soát rủi ro, chiến lược này cũng thêm một thiết lập dừng lỗ đơn giản. Cần dừng lỗ khi giá chạm mức dừng lỗ.

Nhìn chung, chiến lược này rất đơn giản và thẳng thắn, là một trong những chiến lược giao dịch hàng tháng cơ bản nhất, phù hợp để giảng dạy. Trong thực tế, bạn có thể tối ưu hóa các tín hiệu đầu vào và đầu ra, phương thức dừng lỗ và vân vân theo nhu cầu của mình.

Lợi thế chiến lược

  1. Nó rất đơn giản và rất thích hợp cho người mới bắt đầu.

  2. Sử dụng các vị trí giữ hàng tháng, tần suất hoạt động thấp, phù hợp với các nhà đầu tư tìm kiếm sự ổn định.

  3. Có nhiều lựa chọn để làm thêm để phù hợp với các thương nhân khác nhau.

  4. Thêm vào đó là tính năng dừng lỗ, có thể kiểm soát rủi ro cá nhân.

Rủi ro chiến lược

  1. Thời gian nhập cảnh và xuất cảnh là cố định, không thể điều chỉnh theo tình trạng thị trường, có khả năng bị đánh giá.

  2. Không có đánh giá định lượng, có nguy cơ bị theo dõi mù quáng.

  3. Hạn lỗ của một cổ phiếu dễ bị phá vỡ và không kiểm soát được rủi ro đuôi hiệu quả.

  4. Vị trí này là cố định, không thể điều chỉnh theo thị trường.

  5. Sự không chắc chắn về giao dịch có thể dẫn đến việc không hoàn toàn thực hiện theo chiến lược.

  6. Phương pháp dừng đơn giản có thể dẫn đến dừng nhỏ, nên sử dụng dừng động như dừng biến động.

Hướng tối ưu hóa chiến lược

  1. Có thể giới thiệu các chỉ số định lượng để đánh giá tình trạng thị trường, điều chỉnh nhịp độ mở vị trí động.

  2. Cân nhắc các chỉ số cơ bản để đánh giá sự lựa chọn của các cổ phiếu có sức mạnh tương đối.

  3. Đổi vị trí theo các chỉ số rủi ro như biến động của thị trường.

  4. Sử dụng dừng động, hoặc nhiều cấp dừng.

  5. Tham gia mô-đun giao dịch thuật toán để đảm bảo tín hiệu giao dịch có thể được giao dịch.

  6. Tối ưu hóa chiến lược quản lý tài chính, điều chỉnh vị trí giao dịch tương lai chỉ số cổ phiếu cho các điều kiện thị trường khác nhau.

  7. Kết hợp với máy học để đánh giá chất lượng của một cổ phiếu, chọn một cổ phiếu vào.

Tóm tắt

Chiến lược này là một chiến lược mua bán rất cơ bản vào đầu tháng mua bán vào cuối tháng, logic đơn giản, dễ hiểu, phù hợp cho người mới bắt đầu học. Nhưng khi thực hiện thực tế, bạn cần tối ưu hóa thời gian nhập cảnh, cách dừng lỗ, quản lý vị trí để có thể kiếm được lợi nhuận liên tục trong thị trường biến động phức tạp. Chúng ta cần hiểu sâu về ưu điểm của chiến lược, liên tục cải thiện hệ thống chiến lược, phát triển chương trình giao dịch định lượng phù hợp với mình.

Mã nguồn chiến lược
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © Je_Buurman September 1st 2020

//@version=4
strategy("Buurmans Tutorial", overlay=true, initial_capital=1000, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_value=0.2)

// Some initial inputs, these are needed in case the strategy returns an error of "too many trades, > 3000" 

Year    = input(defval = 2020, title = "From Year", minval = 2010)              // 
Month   = input(defval = 1, title = "From Month", minval = 1, maxval=12)
LongOnly=input(true, title="Only go Long?")


// Phase I - the initial "Strategy" - buy Monday, sell Friday

longCondition = dayofweek==dayofweek.monday and (time > timestamp(Year, Month, 01, 00, 00, 00))
shortCondition = dayofweek==dayofweek.friday and (time > timestamp(Year, Month, 01, 23, 59, 59))


// Phase II - some rudimentary "risk-management" e.g. stoploss

Use_stoploss=input(false, title="Use stoploss ?")
stoploss_input=input(150, title="Stoploss in $")
Stoploss = Use_stoploss ? strategy.position_size>0 ? iff(strategy.position_size>0,strategy.position_avg_price - stoploss_input, na) : strategy.position_size<0 ? iff(strategy.position_size<0,strategy.position_avg_price + stoploss_input, na) : na : na
plot(Use_stoploss and strategy.position_size!=0 ? Stoploss : na, color=iff(Stoploss!=na,color.silver, color.red),style=plot.style_linebr)


// Phase III - make it more profitable by trying to filter conditions
// only buy on odd Mondays ? only buy on full moon Mondays ? something else entirely ?


// The actual trades, going Long, close Long, going Short and Stoploss

if (longCondition)
    strategy.entry("Buy on Monday", strategy.long)
    
if (shortCondition and LongOnly==false)
    strategy.entry("Short on Friday", strategy.short)

if (shortCondition and LongOnly)
    strategy.close("Buy on Monday", comment="Sell on Friday")

if (low < Stoploss)
    strategy.close("Buy on Monday", comment="Long Stopped on Someday")
if (high > Stoploss)
    strategy.close("Short on Friday", comment="Short Stopped on Someday")