Codice Morse - pagina 8

 
User_mt5:

È possibile essere d'accordo con questo. Solo in questi termini - 'forse' e 'nel dopo'.

Prima ancora, bisogna definire proprio questo 'ogni schema'. E non è redditizio. Il metodo non riguarda il profitto e il trading in generale. Si tratta di ripetere schemi simili. Cioè un modello nella parte destra con somiglianze nella parte sinistra. Lunghezza, forma, ampiezza, ciclicità, altri parametri sono tutti oggetto di ricerca.

Sì. E se si fa lo stesso sulla base dei candelieri, sarà lo stesso, ma più debole e più frastagliato. E ci sono meno modelli - semplicemente per la definizione di una candela.

Solo che è troppo tardi per dirmi l'alfabeto, l'ho fumato.
Паттерн — Википедия
Паттерн — Википедия
  • ru.wikipedia.org
Па́ттерн (англ.   — образец, шаблон; форма, модель; схема, диаграмма) — схема-образ, действующая как посредствующее представление, или чувственное понятие, благодаря которому в режиме одновременности восприятия и мышления выявляются закономерности, как они существуют в природе и обществе. Паттерн понимается в этом плане как повторяющийся...
 
Rafael Sahibgareev: Per quanto riguarda le idee, guarderei le candele formate dal delta del volume scambiato, Karputov e Saiber hanno buoni indicatori su questo argomento...
puoi darmi un link o maggiori dettagli, cos'è un delta del volume scambiato?
 

https://www.mql5.com/ru/code/17427

https://www.mql5.com/ru/code/17426

https://www.mql5.com/ru/forum/96537/2852515#comment_2852515

Ogni candela è formata dal numero di compravendite,

cioè buy-sell = delta; se delta[1]>0 delta[1]=1

altrimenti se delta[1]<0 delta[1]=0

non è corretto, ma penso che abbia senso....


Session Buy Sell Orders Volume
Session Buy Sell Orders Volume
  • voti: 11
  • 2017.01.19
  • Vladimir Karputov
  • www.mql5.com
В виде гистограммы максимальное и минимальное значения параметров SYMBOL_SESSION_BUY_ORDERS_VOLUME - "Общий объём ордеров на покупку в текущий момент" и SYMBOL_SESSION_SELL_ORDERS_VOLUME - "Общий объём ордеров на продажу в текущий момент".
 
Rafael Sahibgareev:

https://www.mql5.com/ru/code/17427

https://www.mql5.com/ru/code/17426

https://www.mql5.com/ru/forum/96537/2852515#comment_2852515

Ogni candela è formata dal numero di compravendite,

cioè buy-sell = delta; se delta[1]>0 delta[1]=1

altrimenti se delta[1]<0 delta[1]=0

non è corretto, ma penso che sia chiaro....


Per Saiber i ticks sono per il pipsing, Karputov è l'ultimo valore sulla barra corrente; con i loro indicatori non possiamo ottenere la storia delle ultime 24 ore, ecco perché uso i minuti; su una barra oraria prendiamo tutti i minuti, un minuto su - volume di acquisto, un minuto giù - volume di vendita e così via per tutte le barre in ogni combo.

/*
        int getChain(int &codes[], const int order)
        {
            ArraySetAsSeries(codes, true);

            for (int k = 0; k < order; k++) 
            {
                if (codes[k] == 0)
                {
                    codes[k] = 1;
                    return 1;
                }
                else
                {
                    codes[k] = 0;
                }
            }
        
            return 0;
        }

        int getPairs(SSets& series[], const string names, const bool validate = true)
        {
            string syms[];
            int index = 0, count = StringSplit(names, ',', syms);
        
            for (int k = 0; k < count; k++)
            {
                string inverse = StringSubstr(syms[k], 3, 3) + StringSubstr(syms[k], 0, 3) + StringSubstr(syms[k], 6);
                bool A = SymbolSelect(syms[k], true) && SymbolInfoInteger(syms[k], SYMBOL_TRADE_MODE) == SYMBOL_TRADE_MODE_FULL;
                bool B = SymbolSelect(inverse, true) && SymbolInfoInteger(inverse, SYMBOL_TRADE_MODE) == SYMBOL_TRADE_MODE_FULL;
        
                if (A || validate == false)
                {
                    ArrayResize(series, index + 1); 
                    series[index].mSymbol.mName = syms[k];
                    series[index].mSymbol.mOrder = 0;
                    index++;
                }
                else if (B || validate == false)
                {
                    ArrayResize(series, index + 1); 
                    series[index].mSymbol.mName = inverse;
                    series[index].mSymbol.mOrder = 1;
                    index++;
                }
            }
            
            return index;
        }

        int getSourceSets(SSets& series[], const ENUM_TIMEFRAMES period, const int order, const int depth, const int position)
        {
            int bars = MathMin(getSetsBars(series, period, order, depth), depth);
        
            for (int k = 0; k < order; k++)
            {
                MqlRates rates[];
                int count = CopyRates(series[k].mSymbol.mName, period, position, bars, rates);

                if (count < 1)
                {
                    Print(
                        "Synchronization : " + series[k].mSymbol.mName + ", " + 
                        "Position : " + IntegerToString(position) + ", " + 
                        "Depth : " + IntegerToString(depth) + ", " + 
                        "Bars : " + IntegerToString(bars));
        
                    return 0;
                }

                int index = count - 1;

                setupSet(series[k], count);

                for (int n = count - 1; n > -1; n--)
                {
                    series[k].mLow[index] = rates[n].low;
                    series[k].mHigh[index] = rates[n].high;
                    series[k].mOpen[index] = rates[n].open;
                    series[k].mClose[index] = rates[n].close;
                    series[k].mPoint[index] = rates[n].close;
                    series[k].mSpread[index] = rates[n].spread;
                    series[k].mVolume[index] = rates[n].real_volume ? rates[n].real_volume : rates[n].tick_volume;
                    series[k].mTime[index] = rates[n].time;

                    index--;
                }
            }

            return bars;
        }
*/

Nella parte commentata del codice, che non è stata postata la volta scorsa, questa volta chi vuole può metterla insieme e guardare le statistiche sul grafico, basta togliere iSets e iHelpers e sostituire con quello che c'è nei commenti

File:
 

Grazie per l'indicatore, lo metterò insieme più tardi,

Quindi deduco che il posto non sia sospetto...

 
E se dividessimo le statistiche in due parti - per le candele sopra la MA e sotto la MA? Forse dovremmo considerare non solo le candele stesse, ma anche la dinamica generale?
 
-Aleks-:
E se dividiamo la statistica in due parti - per le candele sopra e sotto la MA? Forse dovremmo considerare non solo i candelabri stessi ma anche la dinamica generale?

Questo può anche essere fatto come un indicatore (come un istogramma).

 
Vladimir Karputov:

Questo può essere fatto anche come indicatore (come grafico a barre).

Puoi farlo, ma un indicatore non ti permetterà di raccogliere statistiche...
 
-Aleks-:

È possibile farlo, ma l'indicatore non permetterà di raccogliere statistiche...

Si prega di chiarire quali sono le statistiche?

 
Vladimir Karputov:

Si prega di chiarire quali sono le statistiche?

Statistiche sul movimento del prezzo dopo la formazione di un pattern a candela.