Oposição absoluta - página 6

 
Ivan Vagin:
O pré-requisito para a publicação era que alguém tivesse que codificar o algoritmo e afixar o código aqui, enquanto eu estivesse no hospital, mas tudo ao nível de slogans.

E esta história tem uma sequência, mas provavelmente ninguém a conhecerá... incluindo aqueles que codificaram por si mesmos em segredo :-)
Sempre se tem esperança, e talvez, bem, desta vez, ah ... bem, da próxima vez!
 
Boris:
Há sempre esperança, e se, bem, desta vez, ah... bem, da próxima vez!
É uma lei da natureza, mesmo aqueles que aprendem a surfar pensam assim, alguns desistem, outros conseguem.
 
Ivan Vagin:
É uma lei da natureza, mesmo aqueles que aprendem a surfar pensam assim, alguns desistem, outros conseguem.

No surf, é apenas a sua incapacidade que o impede de surfar!

Mas aqui, quando você sabe como, o sistema é o que manda!

 
Boris:

No surf, a única coisa que se interpõe no seu caminho é a sua inépcia!

Mas aqui, quando você souber como, o sistema governa a sua própria maneira!

O que você sabe fazer?

Não creio que o mercado seja mais difícil do que o mar.
 
Ivan Vagin:
O que você pode fazer?

Não creio que o mercado seja mais difícil do que o mar.
Exatamente, mas há muita coisa que beira o crime financeiro!
 
Dmitry Fedoseev:
Onde estão os resultados?

Publicá-lo-ei em breve.

Pergunta retirada, mensagem apagada.

---- cores da roleta

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

 

Aqui está o roteiro

Aqui está o roteiro, como prometido. Os resultados são os esperados. O roteiro está anexado na parte inferior do post.

Ivan, o que fazer com o depoimento quando os zeros e não nossa cor saiem? Eu subtraí o último lote do depósito antes de mudá-lo.

//+------------------------------------------------------------------+
//|                                                     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;
}
Arquivos anexados:
Roulette.ex4  10 kb
Roulette.mq4  5 kb
 
Alexey Volchanskiy:

Aqui está o roteiro.

Quem quer massa para a noite de Ano Novo? Aqui estão os resultados de um dos testes ))

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

MínLot = 1; //minimal lote
StartDepo = 1000; //Start deposit
Iterações = 10.000; //Número de iterações

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

Eu tive que colocar os números vermelhos em uma matriz, já que as cores e até/ou não combinam, dados daqui 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:

Aqui está o roteiro.

Ivan, o que fazer com o depoimento quando os zeros rolam e não nossa cor? Eu subtraí o último lote do depósito antes de mudá-lo.

claro que "devolver ao cassino", eu só posso procurar no computador agora se eu entender

De modo geral, a aposta é "queimada" se for zero ou não nossa cor.

Você tem uma contagem comum de preto e vermelho.

e você pode contar as sequências mais longas de preto e vermelho
 
Para aqueles que sofrem, vou salientar mais uma vez que o martin na forma em que é usado pela maioria dos comerciantes leva inevitavelmente a uma perda, as principais razões são três

Lote inicial excessivamente grande

Razão de martin em excesso

pequeno depósito


embora tudo isto seja provavelmente a mesma coisa de ângulos diferentes - gestão inadequada do dinheiro