Tài nguyên đang được tải lên... tải...

Chiến lược giao dịch Martingale đồ họa

Tác giả:Tốt, Tạo: 2020-07-23 10:13:42, Cập nhật: 2023-10-26 20:06:48

img

Tóm lại

Nói một cách nghiêm ngặt, Martingale là một phương pháp quản lý vị trí. Nó có thể bắt nguồn từ thế kỷ thứ mười tám và đã tồn tại hàng trăm năm. Vẫn còn nhiều chiến lược martingale hoặc tương tự. Mọi người có sự tán dương và chỉ trích hỗn hợp về chiến lược này. Phần này chúng tôi sử dụng nền tảng FMZ để chứng minh nó theo cách đồ họa.

Martingale là gì?

Martingale có nguồn gốc từ Pháp, theo nghĩa đen được dịch sang tiếng Anh: martegal, ban đầu đề cập đến dây chuyền điều khiển xe ngựa. Martingale sau đó đại diện cho một chiến lược cờ bạc. Nó ban đầu được sử dụng trong cờ bạc roulette và dần dần mở rộng sang các giao dịch tài chính. Cho đến ngày nay, cái bóng của Martingale có thể được nhìn thấy trong cổ phiếu, tương lai và ngoại hối. Lý do cho sức chịu đựng của nó là, về mặt lý thuyết, đây là một chiến lược không bao giờ mất tiền.

Martingale phía trước

Bí mật để không bao giờ thua tiền là tăng gấp đôi cược mỗi lần bạn thua tiền, và trả lại cược vào đơn vị ban đầu sau khi thắng. Cho dù bạn thua bao nhiêu lần trước khi thắng, miễn là xác suất cho phép người chơi đánh bạc giành chiến thắng một lần, nó sẽ không chỉ có thể giành lại tất cả các khoản thua lỗ trước đó, mà còn có lợi nhuận từ một cược. Martingale đã tạo ra nhiều phép màu lợi nhuận và thua lỗ trên thị trường tài chính.

Ví dụ như ném đồng xu, xác suất mặt trước và mặt sau là khoảng 50%. Số lượng mặt trước hoặc mặt sau liên tiếp bắt đầu giảm với xác suất 50%, có nghĩa là trong bất kỳ lần ném tiền xu nào, xác suất đầu là 50%, xác suất 2 lần dương tính liên tiếp là 25%, xác suất 3 lần dương tính liên tiếp là 12,5%, v.v.

Nếu đặt cược ban đầu là 1, số tiền đặt cược cho các khoản thua liên tiếp sẽ tăng gấp đôi 2, đó là: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, vv, cho đến khi bạn thắng, một vòng kết thúc, vì vậy mỗi vòng có thể thắng 1. Mặc dù về mặt lý thuyết, Martingale không bao giờ có thể mất tiền, nhưng khi một loạt các khoản thua xảy ra, kích thước của cược sẽ tăng theo cấp số nhân. Để tránh sử dụng chiến lược này bởi những người đánh bạc có tài chính tốt, hầu hết các sòng bạc đều có giới hạn đặt cược tối đa cho mỗi trò chơi.

Xác minh martingale phía trước với mã

/*backtest
start: 2020-01-01 00:00:00
end: 2020-01-02 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*/

var chart = {
    __isStock: true,
    tooltip: {
        xDateFormat: '%Y-%m-%d %H:%M:%S, %A'
    },
    title: {
        text: 'Money curve'
    },
    rangeSelector: {
        buttons: [{
            type: 'hour',
            count: 1,
            text: '1h'
        }, {
            type: 'hour',
            count: 2,
            text: '3h'
        }, {
            type: 'hour',
            count: 8,
            text: '8h'
        }, {
            type: 'all',
            text: 'All'
        }],
        selected: 0,
        inputEnabled: false
    },
    xAxis: {
        type: ''
    },
    yAxis: {
        title: {
            text: ''
        },
        opposite: false,
    },
    series: [{
        name: "",
        id: "",
        data: []
    }]
}; // Drawing object


// Strategy entry function
function main() {
    var ObjChart = Chart(chart);  // Drawing object
    ObjChart.reset();  // Clear the drawing before starting
    var now = 0  // Random times
    var bet = 1
    var maxBet = 0  // Record maximum multiple
    var lost = 0
    var maxLost = 0  // Maximum consecutive losses
    initialFunds = 10000  // Initial fund
    var funds = initialFunds  // Real-time fund
    while (true) {
        if (Math.random() > 0.5) { // 50% win rate
            funds = funds + bet  // Make money
            bet = 1 // Every time you make money, reset the bet multiple to 1
            lost = 0
        } else {
            funds = funds - bet // Lose money
            bet = bet * 2 // Double the bet multiple if it fails
            lost++
        }
        if (bet > maxBet) {
            maxBet = bet  // Calculate the maximum multiple
        }
        if (lost > maxLost) {
            maxLost = lost  // Calculate the number of consecutive losses
        }
        ObjChart.add([0, [now, funds]])  // Add drawing data
        ObjChart.update(chart)  // Drawing
        now++  // Random times plus 1
        if (funds < 0) {  // If bankruptcy ends the proceedings
            return Log("Initial fund:" + initialFunds + "Random times:" + now   + "Maximum consecutive losses:" + maxLost  + "Maximum multiples:" + maxBet + "Final fund:" + funds)
        }
    }
}

Kết quả thử nghiệm

img

Martingale ngược

Khác với Martingale hướng về phía trước, Martingale ngược là tăng gấp đôi cược mỗi khi bạn thắng, và trả lại cược vào đơn vị ban đầu khi bạn mất tiền. Đây là một phần mở rộng của chiến lược Martingale. Về lý thuyết, chiến lược này phù hợp hơn để sử dụng trong các thị trường xu hướng, bởi vì hoạt động với xu hướng có tỷ lệ thành công cao. Sự gia tăng tỷ lệ thành công đi kèm với lợi nhuận dư thừa thu được bằng cách tăng dần các vị trí.

Xác minh Martingale ngược với mã

/*backtest
start: 2020-01-01 00:00:00
end: 2020-01-02 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*/

var chart = {
    __isStock: true,
    tooltip: {
        xDateFormat: '%Y-%m-%d %H:%M:%S, %A'
    },
    title: {
        text: 'Money curve'
    },
    rangeSelector: {
        buttons: [{
            type: 'hour',
            count: 1,
            text: '1h'
        }, {
            type: 'hour',
            count: 2,
            text: '3h'
        }, {
            type: 'hour',
            count: 8,
            text: '8h'
        }, {
            type: 'all',
            text: 'All'
        }],
        selected: 0,
        inputEnabled: false
    },
    xAxis: {
        type: ''
    },
    yAxis: {
        title: {
            text: ''
        },
        opposite: false,
    },
    series: [{
        name: "",
        id: "",
        data: []
    }]
}; // Drawing object


// Strategy entry function
function main() {
    var ObjChart = Chart(chart);  // Drawing object
    ObjChart.reset();  // Clear the drawing before starting
    var now = 0  // Random times
    var bet = 1
    var maxBet = 0  // Record maximum multiple
    var lost = 0
    var maxLost = 0  // Maximum consecutive losses
    initialFunds = 10000  // Initial fund
    var funds = initialFunds  // Real-time fund
    while (true) {
        if (Math.random() > 0.5) { // 50% win rate
            funds = funds + bet  // make money
            bet = bet * 2 // Double the bet multiple if you make money
            lost = 0
        } else {
            funds = funds - bet // loss money
            bet = 1 // Every time you lose money, reset the bet multiple to 1
            lost++
        }
        if (bet > maxBet) {
            maxBet = bet  // Calculate the maximum multiple
        }
        if (lost > maxLost) {
            maxLost = lost  // Calculate the number of consecutive losses
        }
        ObjChart.add([0, [now, funds]])  // Add drawing data
        ObjChart.update(chart)  // Drawing
        now++  // Random times plus 1
        if (funds < 0) {  // If bankruptcy ends the proceedings
            return Log("Initial fund:" + initialFunds + "Random times:" + now   + "Maximum consecutive losses:" + maxLost  + "Maximum multiples:" + maxBet + "Final fund:" + funds)
        }
    }
}

Kết quả thử nghiệm

img

Ứng dụng Martingale trong thị trường tương lai

Mặc dù không có giới hạn về khối lượng lệnh tối đa trên thị trường tương lai, không giống như sòng bạc, sự gia tăng và giảm của hợp đồng tương lai không phải là một cược hoàn toàn ngẫu nhiên. Thị trường giao dịch tài chính thực sự phức tạp hơn so với sòng bạc. Nếu chiến lược Martingale được sử dụng trong giao dịch tương lai, một khi thị trường di chuyển theo hướng ngược lại thị trường xu hướng, khi thị trường phát triển, vị trí tăng gấp đôi và rủi ro sẽ tăng lên. Sau đó đối với các nhà giao dịch muốn sử dụng chiến lược Martingale cho thị trường tương lai, ít nhất ba vấn đề cần phải được giải quyết:

  1. Vị trí bắt đầu
  2. Tham gia số lần vị trí
  3. Thêm khoảng cách vị trí

Các vị trí ban đầu cần phải được xác định theo số tiền vốn của bạn, tức là tính toán số lượng tối đa các lỗ liên tiếp mà vốn có thể chịu đựng trước khi giao dịch. Nếu vị trí ban đầu quá cao, nó sẽ gây ra một số tiền quá nhiều để đầu tư sau mỗi lần tăng gấp đôi vị trí. Ngoài ra, tăng gấp đôi vị trí quá cao cũng sẽ gây ra cùng một vấn đề. Martingale mặc định tăng gấp đôi vị trí. Nếu nó được thiết lập để tăng 3 lần vị trí, tốc độ phá sản sẽ nhanh hơn, nhưng nếu nó được thiết lập để tăng 1,5 lần vị trí, nó sẽ xuất hiện Một kết quả khác. Điều cuối cùng cần xem xét là khoảng cách để tăng vị trí. Ví dụ, mở một vị trí dài ở mức giá 5000, thêm một vị trí khi giá giảm 15 pips, và thêm một vị trí khi giá giảm 30 pips, cũng khác nhau. Điều này hoàn toàn phụ thuộc vào thói quen rủi ro và sở thích giao dịch của nhà giao dịch.


Có liên quan

Thêm nữa