How to make money from unsteady markets? (Article) - page 2

 
Sorento >> :

Let me just remind you:

...

The max-min and minimax values (prices) for this game are equal to -1 USD and 1 USD respectively. Since these values are not equal to each other, the game

has no solution in pure strategies.

...

Moulin E. Game Theory with Examples from Mathematical Economics. Moscow: Mir,

You don't have to remind me, because you have only cited a special case of the game of eagle and even in the most retarded interpretation - misinformation, because in this case there is a solution, i.e. each player has to choose heads and tails with probability 1/2 = 0.5. The game is fair, since the price of the game is zero and has no saddle point.

 

Almost fell asleep reading the first post.

 
registred >> :

Almost fell asleep reading the first post.

>> well, that's good!


Sleep well, dear comrade.


It is advisable that the people sleep. The less those who try to make money on non-stationarity, the more those, who are going to earn on it, will get.


After all, if all traders know in what hours of the session and in which direction it is better to open, and all together are trying to open in this very direction, the liquidity will fall below the plinth.

 

Assembled an EA for American stock (CFD). Duration of the sessions is 6 hours 30 minutes, i.e. 13 bars on M30.


Input parameters x0 - x12 are volumes in lots for bars in order


//+------------------------------------------------------------------+
//|                                                        Gamer.mq4 |
//|                               Copyright © 2009, Yury V. Reshetov |
//|                                                  http://bigfx.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Yury V. Reshetov"
#property link      "http://bigfx.ru"

//---- input parameters
extern double    x0 = 0.0;
extern double    x1 = 0.0;
extern double    x2 = 0.0;
extern double    x3 = 0.0;
extern double    x4 = 0.0;
extern double    x5 = 0.0;
extern double    x6 = 0.0;
extern double    x7 = 0.0;
extern double    x8 = 0.0;
extern double    x9 = 0.0;
extern double    x10 = 0.0;
extern double    x11 = 0.0;
extern double    x12 = 0.0;
static int prevtime = 0;

//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
  
  if (! IsTradeAllowed()) {
   return(0); // Торговля запрещена
  }
  
  // Проверка на предмет нового бара
  if (Time[0] == prevtime) {
   return(0);
  }
  
  prevtime = Time[0];
  
   double lots = x0; // Необходимое количество открытых лотов для длинных поз
//----
   if ((Hour() == 16) && (Minute() >= 0)) {
      lots = x1;
   }
   if ((Hour() == 16) && (Minute() >= 30)) {
      lots = x2;
   }
   if ((Hour() == 17) && (Minute() >= 0)) {
      lots = x3;
   }
   if ((Hour() == 17) && (Minute() >= 30)) {
      lots = x4;
   }
   if ((Hour() == 18) && (Minute() >= 0)) {
      lots = x5;
   }
   if ((Hour() == 18) && (Minute() >= 30)) {
      lots = x6;
   }
   if ((Hour() == 19) && (Minute() >= 0)) {
      lots = x7;
   }
   if ((Hour() == 19) && (Minute() >= 30)) {
      lots = x8;
   }
   if ((Hour() == 20) && (Minute() >= 0)) {
      lots = x9;
   }
   if ((Hour() == 20) && (Minute() >= 30)) {
      lots = x10;
   }
   if ((Hour() == 21) && (Minute() >= 0)) {
      lots = x11;
   }
   if ((Hour() == 21) && (Minute() >= 30)) {
      lots = x12;
   }
   
   int total = OrdersTotal();
   double lt = 0; // Текущее общее количество лотов в открытых позах
   int ticket = -1; // Тикет позы
   double currlots = 0; // Объем в лотах для последней открытой позы
   
   for (int i = 0; i < total; i++) {
      OrderSelect( i, SELECT_BY_POS, MODE_TRADES); 
      if (Symbol() == OrderSymbol()) { // Проверка на инструмент
         lt = lt + OrderLots(); // Суммируем объемы по открытым позам     
         ticket = OrderTicket(); // Запоминаем тикет последней открытой позы
         currlots = OrderLots(); // Запоминаем объем последней открытой позы
      }
   }
   
   
   
   lots = lots - lt; // Какой объем необходимо открыть или закрыть
   
   
   double minlot = MarketInfo(Symbol(), MODE_MINLOT); // Минимальный объем для манипуляций
   
   if ( lots < 0) { // Если лишний объем нужно закрыть
      lots = MathAbs( lots);
      lots = NormalizeDouble( lots, 1);
      if (( lots - currlots) > ( minlot / 2)) { // Если нужно закрыть объем больший, нежели в последней открытой позе
         OrderClose( ticket, currlots, Bid, 2, Blue);
         prevtime = Time[1]; // Остальное попытаемся закрыть позже
         Sleep(30000);
      } else { // Объем последней открытой позы не превышает требуемый для закрытия
         if (! OrderClose( ticket, lots, Bid, 2, Blue)) { // Делаем попытку закрыть лишний объем
            prevtime = Time[1]; // Попытка неудачна, попробуем позже
            Sleep(30000);
         }
      }
   } else { // Необходима доливка
      lots = NormalizeDouble( lots, 1);
      if ( lots < ( minlot / 2)) { 
         return(0); // Доливка не нужна, объем соответствует
      }
   
      ticket = OrderSend(Symbol(), OP_BUY, lots, Ask, 2, 0, 0, WindowExpertName(), 0, 0, Blue); 
      if ( ticket < 0) {
         prevtime = Time[1]; // Попытка неудачна, попробуем позже
         Sleep(30000);
      }
   }
//----
   return(0);
  }
//+------------------------------------------------------------------+
Files:
gamer.mq4  5 kb
 

For now, I'm making a script that will calculate the first price differences for the payment matrix and output them to a file, so that I can then feed it to the program and get the EA's settings.

 
Reshetov писал(а) >>

As we know, markets have non-stationarity.

The standard error of all posts is the absence of what we take on faith without proof from what we are discussing.

On faith: we have a VR with a variable ACh varying in time with memory. The worst thing is, if a winning strategy is found and a sufficiently large amount of money (not people) start to use it, then the BP will change.

Does this axiomatic description of BP apply to game methods. Although it was a long time ago, the probabilities in the matrix of players are independent of time. And there is nothing to talk about linear programming at all.

What is Reshetov discussing? This is not the first time, by the way.

 
faa1947 писал(а) >>

The standard error of all posts is the lack of what we take on faith, without proof, from what we are discussing.

On faith: we have a VR with a variable AFC, changing over time with memory. The worst thing is, if a winning strategy is found and a sufficiently large amount of money (not people) start to use it, then the BP will change.

Does this axiomatic description of BP apply to game methods. Although it was a long time ago, the probabilities in the matrix of players are independent of time. And there is nothing to talk about linear programming at all.

What is Reshetov discussing? By the way, it's not the first time.

We are more talking about anti-fitting rather than non-stationarity. imha

There are stable market scenarios and a strategy is chosen that will be profitable even in the worst of times. Trying to eliminate the element of luck and coincidence. With non-stationarity the scenarios change over time. I.e. the whole matrix needs to be reviewed.

 
Avals >> :

it's more about anti-fit rather than non-stationarity. imha.

There are stable market scenarios, one chooses a strategy that will be profitable even in the most negative scenario. Trying to eliminate the element of luck and coincidence. With non-stationarity the scenarios change over time. I.e. the whole matrix has to be reviewed.

At the moment you can put it that way. Because traders do not know yet in which areas markets are stationary and in which they are non-stationary. As soon as they get this knowledge that allows taking profit from the market movements with minimal risk, then they will all together put the markets to the stationary state, and then easily and most honestly rob central banks, as it happened in Iceland, for example.

 

I couldn't get through it - it's a very long text.


Could you describe what the article is about in 20 words?

 
SProgrammer >> :

I couldn't get through it - it's a very long text.


Could you describe what the article is about in 20 words?

This is a very succinct article, as it is about half as long as the minimum requirements for publication in the Articles section


How to make it even shorter without losing its meaning, I don't know. And I suppose you can't, because: In mathematics there are no royal ways (c) Euclid