Estrategia de negociación gráfica de Martingale

El autor:La bondad, Creado: 2020-07-23 10:13:42, Actualizado: 2023-10-26 20:06:48

img

Resumen de las actividades

En términos estrictos, Martingale es un método de gestión de posiciones. Se remonta al siglo XVIII y ha perdurado durante cientos de años. Todavía hay muchas estrategias de martingale o similares. La gente ha recibido alabanzas y críticas mixtas sobre esta estrategia.

¿ Qué es Martingale?

Martingale se originó en Francia, literalmente traducido al inglés: martegal, originalmente se refería al arnés que controla el carruaje. Más tarde, Martingale representó una estrategia de juego. Inicialmente se usó en el juego de ruleta y gradualmente se extendió a las transacciones financieras.

Martingale hacia adelante

El secreto para no perder dinero es duplicar la apuesta cada vez que pierdas dinero, y devolver la apuesta a la unidad original después de cualquier victoria. No importa cuántas veces pierdas antes de ganar, siempre y cuando la probabilidad permita al jugador ganar una vez, no solo podrá recuperar todas las pérdidas anteriores, sino también el beneficio de una apuesta. Martingale ha creado muchos milagros de ganancias y pérdidas en el mercado financiero.

Tomando un lanzamiento de monedas como ejemplo, la probabilidad de que el frente y la parte posterior sea aproximadamente el 50%. El número de frentes o espaldas consecutivas comienza a disminuir con una probabilidad del 50%, lo que significa que en cualquier lanzamiento de monedas, la probabilidad de una cara es del 50%, la probabilidad de 2 positivos consecutivos es del 25%, la probabilidad de 3 positivos consecutivos es del 12.5%, y así sucesivamente.

Si la apuesta inicial es 1, la apuesta por pérdidas consecutivas se aumenta por un múltiplo de 2, es decir: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, etc., hasta que ganas, una ronda está terminada, por lo que cada ronda puede ganar 1. Aunque en teoría, Martingale nunca puede perder dinero, pero a medida que se producen una serie de pérdidas, el tamaño de la apuesta aumentará exponencialmente.

Verifique el martingale con el código

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

Resultados de las pruebas

img

Martingale hacia atrás

En contraste con el martingale hacia adelante, el martingale inverso es duplicar la apuesta cada vez que ganas, y devolver la apuesta a la unidad inicial cuando pierdes dinero. Esta es una extensión de la estrategia de Martingale. En teoría, esta estrategia es más adecuada para su uso en mercados de tendencia, porque la operación con la tendencia tiene una alta tasa de éxito. El aumento de la tasa de éxito se acompaña de los retornos excedentes obtenidos por el aumento gradual de las posiciones.

Verifique la martingale hacia atrás con el código

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

Resultados de las pruebas

img

Aplicación de Martingale en el mercado de futuros

Aunque no hay límite en el volumen máximo de pedidos en el mercado de futuros, a diferencia de los casinos, el aumento y la caída de los futuros no es una apuesta completamente aleatoria. El mercado de operaciones financieras reales es más complicado que los casinos. Si se utiliza la estrategia Martingale en el comercio de futuros, una vez que el mercado se mueve en la dirección opuesta al mercado de tendencia, a medida que el mercado se desarrolla, la posición doblada aumentará y el riesgo aumentará.

  1. Posición inicial
  2. Agregar múltiplos de posición
  3. Adición de la distancia de posición

La posición inicial debe determinarse de acuerdo con la cantidad de su capital, es decir, calcular el número máximo de pérdidas consecutivas que el capital puede soportar antes de negociar. Si la posición inicial es demasiado alta, causará que se invierta una cantidad excesiva de fondos después de cada duplicación de la posición. Además, un aumento de posición múltiple demasiado alto causará el mismo problema. Martingale impone el aumento de posición doble. Si se establece en 3 veces el aumento de la posición, la velocidad de quiebra será más rápida, pero si se establece en 1,5 veces la posición, aparecerá Otro resultado. Lo último que debe considerar es la distancia para aumentar la posición. Por ejemplo, abrir una posición larga a 5000 precio, agregar una posición cuando el precio cae 15 pips, y agregar una posición cuando el precio cae 30 pips, también es diferente. Esto depende completamente de los hábitos de tolerancia al riesgo y las preferencias comerciales del comerciante.


Relacionados

Más.