絶対反対 - ページ 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 = 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;
}
ファイル:
Roulette.ex4  10 kb
Roulette.mq4  5 kb
 
Alexey Volchanskiy:

これがその台本です。

大晦日に生地が欲しい人は?以下は、そのテストの1つの結果です ))

2015.12.09 00:55:46.757 ルーレット 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:

これがその台本です。

イワン、ゼロが転がったときにデポをどうするか、我々の色に染まらないか?デポから最後のロットサイズを引いてから変更しました。

もちろん、「カジノに還元する」です。

一般的には、ベットがゼロであったり、私たちの色でない場合は「燃やされる」と言われています。

黒と赤のカウントが共通なんですね。

と、黒と赤の最長配列を数えることができます。
 
苦しむ人のためにもう一度強調しておきますが、ほとんどのトレーダーが使っている形のマーチンは必然的に損失につながるもので、主な理由は次の3つです。

初期ロットが大きすぎる

過大なマーチン比

しょうがくせき


これはすべて同じことなのだが、角度を変えてみると、不適切な資金管理ということになる。