[Архив]учитесь зарабатывать селяне![Архив] - страница 660

 
Roman.:


Понятно. Проверять прям щас в сове (там даже такая же ф-ия по названию) - просто ее (ту) заменить на эту (Вашу) не буду... позже гляну подробнее...

Напишите строкой примерные лоты по усредняющим ордерам при стартовом дЕпе, напр. 10 000 ед. валюты, т.е.:

0. стартовый объем = 0,01 лот.

1-ый усредняющий рыночный = 0,02 лот.

3-ий усредняющий рыночный = 0,03 лот.

4-ый = 0,05

5-ый = 0,09

6

7

8

9

И последующий усредняющий ордер ставить после 900 сек. после открытия предыдущего усредняющего рыночного при наличии убытка по всем предыдущим однонаправленным стартовым и усредняющим ордерам?

Не совсем, ордера у меня ставятся пока есть подтверждающий сигнал индикатора, но не чаще раз в 900 секунд (выбрал наугад), какой будет лот определить немогу, я ведь незнаю куда рынок меня понесет, если в плюсе то лот больше, если в минусе то меньше (никакого мартингейла для вытягивания убыточных ордеров), в прикрепленном отчете видно лоты, там поная неразбериха
Файлы:
 
BeerGod:
Не совсем, ордера у меня ставятся пока есть подтверждающий сигнал индикатора, но не чаще раз в 900 секунд (выбрал наугад), какой будет лот определить немогу, я ведь незнаю куда рынок меня понесет, если в плюсе то лот больше, если в минусе то меньше (никакого мартингейла для вытягивания убыточных ордеров), в прикрепленном отчете видно лоты, там поная неразбериха

Понятно. Роем дальше! :-)
 
Roman.:

Задал вопрос в соответствующем топике - см. эту ветвь. Сам - не знаю, "вышка" давно была... :-)
Поправь пожалуйста, Х - константа значения степени
 
new-rena:
Поправь пожалуйста, Х - константа значения степени

Исправлено.
 
Roman.:

Исправлено.

Ну когда такое уравнение решим, готово будет(наверное страница №666). Можно будет в тестере прогнать и сделать прогноз по годовым процентам. Параметров нет - просто результат интересен

А индюк прямо в советника загнал. Поменять только нужно [i-1]-->1

 
new-rena:
Ну когда такое уравнение решим, готово будет. Можно будет в тестере прогнать и сделать прогноз по годовым процентам. Параметров нет - просто результат интересен


Я вот тоже щас кручу разные варианты, в частности определение шага по величине макс. безотката по скрипту хренфх'са по макс. глубине истории...

Я к тому, что если брать диапазон м/у макс. и мин. за определенный период времени, то не будет ли это излишней перестраховкой... и, как, следствие, снижение прибыли, ведь шаг усредняющих ордеров будет увеличен, в сравнении со значением, полученным в результате деления макс. безотката на макс. кол-во возможных усредняющих ордеров???...

И я проверил, что если делать величину усреднения по арифметической прогрессии, то нужет более серьезный откат для выхода связки ордеров в профит, чем, допустим, при удваивании предудыщего ордера... у меня щас такая конструкция - см. на нее в тестере и оптимизаторе на разных инструментах:

Три вида усреднения:

 
Roman.:


Я вот тоже щас кручу разные варианты, в частности определение шага по величине макс. безотката по скрипту хренфх'са по макс. глубине истории...

Я к тому, что если брать диапазон м/у макс. и мин. за определенный период времени, то не будет ли это излишней перестраховкой... и, как, следствие, снижение прибыли, ведь шаг усредняющих ордеров будет увеличен, в сравнении со значением, полученным в результате деления макс. безотката на макс. кол-во возможных усредняющих ордеров???...

И я проверил, что если делать величину усреднения по арифметической прогрессии, то нужет более серьезный откат для выхода связки ордеров в профит, чем, допустим, при удваивании предудыщего ордера... у меня щас такая конструкция - см. на нее в тестере и оптимизаторе на разных инструментах:

Три вида усреднения:

Ну да, арифметическое усреднение - факт гарантии слива. Я это и имел ввиду про того, у кого ПАММ смотрели

Также при удвоении - не факт, что денег хватит. Поэтому вариант моей формулы наращивания величины лота- гарантия антислива, согласно истории

 
extern int Max_Iteration = 36;// Максимальное количество усреднений (ордеров) в нетто-илане 
extern int VAR_MM = 0; // используемый вариант усреднения в соотв-ии: множитель с числами ФИБО = 0 / множитель по арифметической прогрессии = 1
                      // 2 - классический мартин - удвоение предыдущего объема с 3-его усреднения   

 // Ордер закрылся с убытком - считаем количество усреднений, новый lots, усредняем цену открытия  в ТОМ ЖЕ направлении
            // при условии, что общее количество усреднений не выше максимального по соответствующему варианту усреднения                               
        
          if (Iteration <= Max_Iteration && VAR_MM == 0)                  
              // Последующие лоты открываются по множителю в соответствие с числами ФИБО           
               switch(Iteration)                                  // Заголовок switch 
                   {                                              // Начало тела switch                  
                     case 1 : Lots_New = lastLots * 1; lots = lastLots; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );break; //расчет нового объема       
                     case 2 : Lots_New = lots * 2;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;   
                     case 3 : Lots_New = lots * 3;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 4 : Lots_New = lots * 5;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 5 : Lots_New = lots * 8;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 6 : Lots_New = lots * 13;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 7 : Lots_New = lots * 21;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 8 : Lots_New = lots * 34;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;         
                     case 9 : Lots_New = lots * 55;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;           
                     case 10: Lots_New = lots * 89;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 11: Lots_New = lots * 144;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 12: Lots_New = lots * 233;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 13: Lots_New = lots * 377;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 14: Lots_New = lots * 610;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 15: Lots_New = lots * 987;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 16: Lots_New = lots * 1597; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;                            
                     default: Lots_New = lots * 2584; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );   
                   }                                    // Конец тела switch      
                    
           if (Iteration <= Max_Iteration && VAR_MM == 1)//Последующие лоты открываются в соответствие с членами арифметической прогрессии  
               switch(Iteration)                        // Заголовок switch 
                   {                                    // Начало тела switch    
                     case 1 : Lots_New = lastLots * 1; lots = lastLots; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );break; //расчет нового объема            
                     case 2 : Lots_New = lots * 3;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;   
                     case 3 : Lots_New = lots * 5;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 4 : Lots_New = lots * 7;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 5 : Lots_New = lots * 9;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 6 : Lots_New = lots * 11;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 7 : Lots_New = lots * 13;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 8 : Lots_New = lots * 15;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;         
                     case 9 : Lots_New = lots * 17;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;           
                     case 10: Lots_New = lots * 19;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 11: Lots_New = lots * 21;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 12: Lots_New = lots * 23;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 13: Lots_New = lots * 25;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 14: Lots_New = lots * 27;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;       
                     case 15: Lots_New = lots * 29;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;       
                     case 16: Lots_New = lots * 31;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;   
                     case 17: Lots_New = lots * 33;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 18: Lots_New = lots * 35;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 19: Lots_New = lots * 37;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 20: Lots_New = lots * 39;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 21: Lots_New = lots * 41;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 22: Lots_New = lots * 43;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;         
                     case 23: Lots_New = lots * 45;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;           
                     case 24: Lots_New = lots * 47;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 25: Lots_New = lots * 49;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 26: Lots_New = lots * 51;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 27: Lots_New = lots * 53;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 28: Lots_New = lots * 55;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 29: Lots_New = lots * 57;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 30: Lots_New = lots * 59;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 31: Lots_New = lots * 61;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 32: Lots_New = lots * 63;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 33: Lots_New = lots * 65;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 34: Lots_New = lots * 67;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 35: Lots_New = lots * 69;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;                               
                     default: Lots_New = lots * 71;  {Iteration = 0; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New ); }                       
                   }                                   // Конец тела switch  
          
 

Вот такая конструкция - все не вошло сразу:

if (Iteration <= Max_Iteration && VAR_MM == 2)// Последующие лоты открываются в соответствие с классическим мартином - удвоение           
               switch(Iteration)                       // Заголовок switch 
                   {                                   // Начало тела switch                       
                     case 1 : Lots_New = lastLots * 1; lots = lastLots; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );break; //расчет нового объема       
                     case 2 : Lots_New = lots * 1;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;   
                     case 3 : Lots_New = lots * 2;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 4 : Lots_New = lots * 4;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 5 : Lots_New = lots * 8;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 6 : Lots_New = lots * 16;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 7 : Lots_New = lots * 32;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;     
                     case 8 : Lots_New = lots * 64;   Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;         
                     case 9 : Lots_New = lots * 128;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;           
                     case 10: Lots_New = lots * 256;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 11: Lots_New = lots * 512;  Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 12: Lots_New = lots * 1024; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 13: Lots_New = lots * 2048; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;                                      
                     case 14: Lots_New = lots * 4096; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;                                                               
                     default: Lots_New = lots * 8192; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );   
                   }                                   // Конец тела switch          
                   
// ---------НОРМАЛИЗЦИЯ НОВЫХ РАСЧЕТНЫХ ЛОТОВ И ОТКРЫТИЕ ОЧЕРЕДНОЙ ПОЗИЦИИ...            
                    Lots_New = NormalizeLots(Lots_New);
                    if (lastType == OP_SELL) WmOrderSend(Symbol(), OP_SELL, Lots_New, Bid, 0, 0, "усреднение" , MagicNumber);
                    if (lastType == OP_BUY)  WmOrderSend(Symbol(), OP_BUY, Lots_New, Ask, 0, 0, "усреднение" ,  MagicNumber);                            
                      
                 
       

 
Roman.:

А откуда 36? И коэффициент уж больно крутой получается. Депо то прикинь - сложи все лоты и умножь на маржу

Причина обращения: