Абсолютное противостояние - страница 6

 
Ivan Vagin:
Условием публикации было чтоб кто либо закодил алгоритм и тут выложил код, пока я в больничке валяюсь, однако все пока на уровне лозунгов

а у этой истории есть продолжение, но наверное его никто не узнает... в том числе и те кто в тихушку закодил для себя :-)
Всегда у кого-то теплится надежда, а вдруг, ну на этот-то раз, ах ... ну на следущий раз!
[Удален]  
Boris:
Всегда у кого-то теплится надежда, а вдруг, ну на этот-то раз, ах ... ну на следущий раз!
Это закон природы, так думают даже те кто учится кататься на серфинге, кто-то сдается, у кого-то получается.
 
Ivan Vagin:
Это закон природы, так думают даже те кто учится кататься на серфинге, кто-то сдается, у кого-то получается.

В серфинге тебе мешает только твоё неумение!

А тут, когда и умеешь, система рулит своё!

[Удален]  
Boris:

В серфинге тебе мешает только твоё неумение!

А тут, когда и умеешь, система рулит своё!

Что умеешь?

Не думаю что рынок сложнее моря.
 
Ivan Vagin:
Что умеешь?

Не думаю что рынок сложнее моря.
Точно, но в нём действует много всякого граничищего с финансовыми преступлениями!
 
Dmitry Fedoseev:
Где же результаты?

Скоро выложу. 

Вопрос снят, потер сообщение. 

---- цвета рулетки 

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

 

Вот скрипт

Вот скрипт, как обещал. Результаты соответствуют ожиданиям. Скрипт приаттачен внизу поста.

Иван, что делать с депо, когда выпадает зеро и не наш цвет? Я отнимал от депо последний размер лота перед его изменением.

//+------------------------------------------------------------------+
//|                                                     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 = 1e99;
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;
}
Файлы:
Roulette.ex4  10 kb
Roulette.mq4  5 kb
 
Alexey Volchanskiy:

Вот скрипт

Кому бабла на НГ? Вот результаты одного из тестирований )) 

2015.12.09 00:55:46.757 Roulette 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;      //Минимальный лот
StartDepo   = 1000;     //Стартовый депозит
Iterations  = 10000;     //Количество итераций

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

Пришлось красные числа забить в массив, так как цвета и чет/нечет не совпадают, данные отсюда 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:

Вот скрипт

Иван, что делать с депо, когда выпадает зеро и не наш цвет? Я отнимал от депо последний размер лота перед его изменением.

конечно "отдать казино", смогу посмотреть только на компе щас только на словах если пойму

в общем виде - ставка "сгорает" если ноль или не наш цвет

у тебя есть общий счетчик черного и красного

а можно посчитать самые длинные последовательности черного и красного
[Удален]  
Для страждущих еще раз подчеркну мартин в том виде в котором он используется большинством трейдеров неизбежно ведет к сливу, основных причин три

слишком большой стартовый лот

черезмерно большой коэффициент мартина 

малый депозит


хотя все это наверное одна ипостась с разных сторон - неправильный монейменеджмент