Oposición absoluta - página 6

 
Ivan Vagin:
El requisito previo para la publicación era que alguien tuviera que codificar el algoritmo y publicar el código aquí, mientras yo estoy en el hospital, pero todo sigue a nivel de consignas.

Y esta historia tiene una secuela, pero probablemente nadie la conozca... incluyendo a los que lo codificaron tranquilamente para sí mismos :-)
Uno siempre tiene una esperanza, y tal vez, bueno, esta vez, ah ... Bueno, ¡la próxima vez!
 
Boris:
Siempre hay esperanza, y si, bueno, esta vez, ah... Bueno, ¡la próxima vez!
Es una ley de la naturaleza, incluso los que aprenden a surfear piensan así, algunos se rinden, otros lo consiguen.
 
Ivan Vagin:
Es una ley de la naturaleza, incluso los que aprenden a surfear piensan así, algunos se rinden, otros lo consiguen.

En el surf, lo único que te impide es tu incapacidad.

Pero aquí, cuando se sabe cómo, ¡el sistema manda!

 
Boris:

En el surf, lo único que se interpone en tu camino es tu ineptitud.

Pero aquí, cuando se sabe cómo, ¡el sistema gobierna a su manera!

¿Qué sabes hacer?

No creo que el mercado sea más duro que el mar.
 
Ivan Vagin:
¿Qué puedes hacer?

No creo que el mercado sea más duro que el mar.
Exacto, ¡pero hay muchas cosas que rozan el delito financiero!
 
Dmitry Fedoseev:
¿Dónde están los resultados?

Lo publicaré pronto.

Pregunta retirada, mensaje borrado.

---- colores de la ruleta

https://otvet.mail.ru/question/9344746

 

Este es el guión

Aquí está el guión, como se prometió. Los resultados son los esperados. El guión se adjunta al final del post.

Iván, ¿qué hacer con el depo cuando salen ceros y no nuestro color? He restado el último tamaño de lote del depo antes de cambiarlo.

//+------------------------------------------------------------------+
//|                                                     Roulette.mq4 |
//|                               Copyright 2015, Alexey Volchanskiy |
//|                                          https://mql.gnomio.com/ |
//| Autor of idea is Ivan Vagin at 2015.12.07 04:40                  |
//| see https://www.mql5.com/ru/forum/68328                          | 
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, Alexey Volchanskiy"
#property link      "https://mql.gnomio.com/"
#property version   "1.00"
#property strict
#property script_show_inputs

enum EFields {EZero, EBlack, ERed};

extern EFields  StartField  = EBlack;   //Цвет первой ставки    
extern double   MinLot      = 1;      //Минимальный лот
extern double   StartDepo   = 1000;     //Стартовый депозит
extern uint     Iterations  = 1000;     //Количество итераций
extern bool     PrintEnable = true;     //Печатать итерации

const int ARed[] = {1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36};
double MaxLot = 0, MaxDepo = 0, MinDepo = 1 e99;
uint NZero = 0, Nred = 0, Nblack = 0;

/*-----------------------------
Поскольку одна ячейка - это примерно 2,7% колеса рулетки, именно такой процент хозяева казино 
кладут себе в карман в среднем с каждой сделки, медленно выкачивая деньги из клиентов.
----------

Алгоритм ставок в том виде, как написал Ivan Vagin 2015.12.07 04:40 

1 Ставим минимальную ставку на цвет из настроек
2 Запускаем рулетку
(Если) выпал наш цвет то 3 если не наш то 4 если выпал 0 то 5
3 Забираем удвоенную прибыль и ставим минимальную ставку на другой цвет
4 Удваиваем ставку на тот же цвет
5 Удваиваем ставку и меняем цвет ставки

Далее 2 пока не кончится количество итераций
Если кончилось количество итераций то конец
----------
Что хотелось бы видеть на выходе.... ну кроме прироста депозита, соотношение прибыльных и убыточных, самые длинные последовательности красного/черного/нуля в последней серии итераций,
показательна была бы кривая эквити

-----------------------------*/
#define  PRINT if(PrintEnable) Print("iteration=", iter, "  result=",  result, "  lastField=", lastField,  "  depo=", depo, "  lot=", lot);
#define  PRINTEND Print("iteration=", (iter-1), "  depo=", depo, "  MinDepo=", MinDepo, "  MaxDepo=", MaxDepo, "  MaxLot=", MaxLot, "  NZero=", NZero, "  Nred=", Nred, "  Nblack=", Nblack);

void OnStart()
{
    Print(0 % 36, "  ", 1 % 36, "  ", 37 % 36);
    uint iter = 0;
    EFields lastField = StartField;
    double lot = MinLot, depo = StartDepo;
    
    MathSrand(GetTickCount()); 
    while(iter++ < Iterations && depo > 0)
    {
        EFields result = Spin();

        if(result == EZero) //5 Удваиваем ставку и меняем цвет ставки
        {
            depo += lot*1; //??????? что тут делать с прибылью? 
            lot *= 2;
            PRINT
            if(MaxLot < lot)
                MaxLot = lot;
            if(MaxDepo < depo)
                MaxDepo = depo;
            NZero++;            
            lastField = (lastField == ERed)? EBlack: ERed;  
            continue;
        }    
        if(result == lastField) // 3 Забираем удвоенную прибыль и ставим минимальную ставку на другой цвет
        {
            depo += lot*2; 
            lot = MinLot;
            if(MaxDepo < depo)
                MaxDepo = depo;
           
            PRINT
            if(lastField == ERed)
            {
                lastField = EBlack;
                Nred++;    
            }    
            else
            {
                lastField = ERed;
                Nblack++;
            }    
            continue;
        }    
        else
        {
            depo -= lot; 
            if(MinDepo > depo)
                MinDepo = depo;
            lot *= 2;
            if(MaxLot < lot)
                MaxLot = lot;
            uint n = (lastField == ERed)? ++Nred: ++Nblack;    
            PRINT
        }
    }
    PRINTEND   
}

EFields Spin()
{
    int result = MathRand() % 36;
    if(result == 0)
        return EZero;
    for(int n = 0; n < 18; n++)    
        if(result == ARed[n]) 
            return ERed; 
    return EBlack;
}
Archivos adjuntos:
Roulette.ex4  10 kb
Roulette.mq4  5 kb
 
Alexey Volchanskiy:

Este es el guión.

¿Quién quiere pasta para Nochevieja? Aquí están los resultados de una de las pruebas ))

2015.12.09 00:55:46.757 Ruleta EURUSD.e,M5: iteration=10000 depo=66927.0 MinDepo=1001.0 MaxDepo=66927.0 MaxLot=16384.0 NZero=260 Nred=4969 Nblack=4771

MinLot = 1; //lote mínimo
StartDepo = 1000; /Depósito inicial
Iteraciones = 10000; //Número de iteraciones

-----------------

He tenido que poner los números rojos en una matriz, ya que los colores y pares/impares no coinciden, datos de aquí https://otvet.mail.ru/question/9344746

const int ARed[] = {1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36};
 
Alexey Volchanskiy:

Este es el guión.

Iván, ¿qué hacer con el depo cuando ruedan los ceros y no nuestro color? He restado el último tamaño de lote del depo antes de cambiarlo.

por supuesto "devolver al casino", sólo puedo buscarlo en el ordenador ahora si lo entiendo

En general, la apuesta está "quemada" si es cero o no es de nuestro color.

Tiene una cuenta común negra y roja.

y puedes contar las secuencias más largas de negro y rojo
 
Para aquellos que sufren, voy a subrayar una vez más que martin en la forma en que es utilizado por la mayoría de los comerciantes conduce inevitablemente a una pérdida, las principales razones son tres

Lote inicial excesivamente grande

Excesiva proporción de martinetes

pequeño depósito


aunque probablemente se trate de lo mismo desde distintos ángulos: la gestión inadecuada del dinero