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 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.
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.
/*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)
}
}
}
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í.
/*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)
}
}
}
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:
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.