Opposizione assoluta - pagina 6

 
Ivan Vagin:
Il prerequisito per la pubblicazione era che qualcuno doveva codificare l'algoritmo e postare il codice qui, mentre io sono in ospedale, ma tutto a livello di slogan.

E questa storia ha un seguito, ma probabilmente nessuno lo saprà mai... compresi quelli che l'hanno codificato in silenzio per se stessi :-)
Si ha sempre una speranza, e forse, beh, questa volta, ah... Bene, la prossima volta!
 
Boris:
C'è sempre la speranza, e se, beh, questa volta, ah... Bene, la prossima volta!
È una legge di natura, anche chi impara a surfare lo pensa, alcuni rinunciano, altri ci riescono.
 
Ivan Vagin:
È una legge di natura, anche chi impara a surfare lo pensa, alcuni rinunciano, altri ci riescono.

Nel surf, è solo la tua incapacità che ti impedisce di navigare!

Ma qui, quando si sa come fare, il sistema governa!

 
Boris:

Nel surf, è solo la tua incapacità che ti impedisce di navigare!

Ma qui, quando si sa come fare, il sistema governa a modo suo!

Cosa sai fare?

Non credo che il mercato sia più difficile del mare.
 
Ivan Vagin:
Cosa si può fare?

Non credo che il mercato sia più difficile del mare.
Esattamente, ma c'è un sacco di roba che confina con il crimine finanziario!
 
Dmitry Fedoseev:
Dove sono i risultati?

Lo posterò presto.

Domanda ritirata, messaggio cancellato.

---- roulette colori

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

 

Ecco lo script

Ecco la sceneggiatura, come promesso. I risultati sono quelli attesi. Lo script è allegato in fondo al post.

Ivan, cosa fare con il depo quando escono gli zeri e non il nostro colore? Ho sottratto l'ultima dimensione del lotto dal depo prima di 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;
}
File:
Roulette.ex4  10 kb
Roulette.mq4  5 kb
 
Alexey Volchanskiy:

Ecco il copione.

Chi vuole la pasta per l'ultimo dell'anno? Ecco i risultati di uno dei test ))

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

MinLot = 1; //lotto minimo
StartDepo = 1000; //deposito iniziale
Iterazioni = 10000; //numero di iterazioni

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

Ho dovuto mettere i numeri rossi in un array, poiché i colori e il pari/dispari non corrispondono, dati da qui 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:

Ecco il copione.

Ivan, cosa fare con il depo quando gli zeri rotolano e non il nostro colore? Ho sottratto l'ultima dimensione del lotto dal depo prima di cambiarlo.

naturalmente "restituire al casinò", posso solo cercarlo sul computer ora se ho capito

In generale, la scommessa è "bruciata" se è zero o non è del nostro colore.

Avete un conteggio comune nero e rosso.

e si possono contare le sequenze più lunghe di nero e rosso
 
Per coloro che soffrono, sottolineo ancora una volta che martin nella forma in cui viene utilizzato dalla maggior parte dei commercianti porta inevitabilmente ad una perdita, i motivi principali sono tre

Lotto iniziale troppo grande

Rapporto martin eccessivo

piccolo deposito


anche se questo è probabilmente la stessa cosa da angolazioni diverse - gestione impropria del denaro