无利可图的交易 0!!!!!! - 页 10

 
granit77 >> :

而这个主题中的集市,只有在期待一个森林管理员会来给我们指出最近的高速公路的道路时才会得到支持......

是的......嗯,结果还不错,我在40%的滑点上得到了一周100%的存款增长......我用OsMa变态......有很多杠杆,你可以做很多。如果你理解我,原始信号Low High filter随机指数和Osma是一样的,即IF随机指数和Osma......原则上,如果你不作弊(你可以在2周内以78%的缩水提高12000的1000),那么结果是正常的......现在,我将尝试做一些更神奇的事......

 

谁能告诉你如何提取一个autolot,这将是大小不是0.1,并与0.01,因为我从KIM不希望计算低于200格里夫纳的存款百分比。

这是我的代码--

string _Parameters_b_Lots = "Параметры модуля расчёта лота"; 
int LotsWayChoice = 1;     // Способ выбора рабочего лота: 
                                  //  0-фиксированный, 
                                  //  1-процент от депозита, 
                                  //  2-фракционно-пропорциональный, 
                                  //  3-фракционно-фиксированный, 
extern int LotsPercent    = 40;    // Процент от депозита (Оптимизация проведена для 1000$)
int LotsDeltaDepo  = 20;   // Коэффициент приращения депозита 
int LotsDepoForOne = 20;   // Размер депозита для одного минилота 
int LotsMax        = 10000; // Максимальное количество лотов 
( и в конце)
if( ik == 0)
     {
       Balance0 = AccountBalance();
       ik = 1;
     } 
//----
   if( ReInvest == 1)
       lotsi = Lots*AccountBalance() / Balance0; 
   else 
       lotsi = Lots; 
//----
   if( lotsi < 0.1)
     {
       lotsi = 0.01;
     } 
//----
   if( lotsi >= 0.1 && lotsi < 0.2)
       lotsi = 0.1; 
   else 
    {
     if( lotsi >= 0.2 && lotsi < 0.5)
       lotsi = 0.2; 
     else 
      { 
       if( lotsi >= 0.5 && lotsi < 1)
         lotsi = 0.5; 
       else 
        {
         if( lotsi >= 1 && lotsi < 2)
           lotsi = 1; 
         else 
          { 
           if( lotsi >= 2 && lotsi < 3)
             lotsi = 2; 
           else 
            {
             if( lotsi >= 3 && lotsi < 4)
               lotsi = 3; 
             else 
              { 
               if( lotsi >= 4 && lotsi < 5)
                 lotsi = 4; 
               else 
                {
                 if( lotsi >= 5 && lotsi <6 )
                   lotsi = 5; 
                 else 
                  { 
                   if( lotsi >= 6 && lotsi < 7)
                     lotsi = 6; 
                   else 
                    {
                     if( lotsi >= 7 && lotsi < 8)
                       lotsi=7; 
                     else 
                      { 
                       if( lotsi >= 8 && lotsi < 9)
                         lotsi = 8; 
                       else 
                        {
                         if( lotsi >= 9 && lotsi < 15)
                           lotsi = 9; 
                         else 
                          { 
                           if( lotsi >= 15 && lotsi < 20)
                             lotsi = 15; 
                           else 
                            {
                             if( lotsi >= 20 && lotsi < 25)
                               lotsi = 20; 
                             else 
                              { 
                               if( lotsi >= 25 && lotsi < 30)
                                 lotsi = 25; 
                               else 
                                {
                                 if( lotsi >= 30 && lotsi < 35)
                                   lotsi = 30; 
                                 else 
                                  { 
                                   if( lotsi >= 35 && lotsi < 40)
                                     lotsi = 35; 
                                   else 
                                    {
                                     if( lotsi >= 40 && lotsi < 45)
                                       lotsi = 40; 
                                     else 
                                      { 
                                       if( lotsi >= 45 && lotsi < 50)
                                         lotsi = 45; 
                                       else 
                                        {
                                         if( lotsi >= 50 && lotsi < 55)
                                           lotsi = 50; 
                                         else 
                                          { 
                                           if( lotsi >= 55 && lotsi < 60)
                                             lotsi = 55; 
                                           else 
                                            {
                                             if( lotsi >= 60 && lotsi < 65)
                                               lotsi = 60; 
                                             else 
                                              { 
                                               if( lotsi >= 65 && lotsi < 70)
                                                 lotsi = 65; 
                                               else 
                                                {
                                                 if( lotsi >= 70 && lotsi < 75)
                                                   lotsi = 70; 
                                                 else 
                                                  { 
                                                   if( lotsi >= 75 && lotsi < 80)
                                                     lotsi = 75; 
                                                   else 
                                                    {
                                                     if( lotsi >= 80 && lotsi < 85)
                                                       lotsi = 80; 
                                                     else 
                                                      { 
                                                       if( lotsi >= 85 && lotsi < 90)
                                                         lotsi = 85; 
                                                       else 
                                                        {
                                                         if( lotsi >= 90 && lotsi < 95)
                                                           lotsi = 90; 
                                                         else 
                                                          { 
                                                           if( lotsi >= 95 && lotsi < 100)
                                                             lotsi = 95; 
                                                           else 
                                                            {
                                                             if( lotsi >= 100)
                                                               lotsi= lotsi;/*100*/ 
                                                            }
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    } 
   MidLot = GetSizeLot(); 
   lotsi = NormalizeDouble( MidLot, 1); 
   total=OrdersTotal();                                        
   cbars=Bars;
   return(0);
   } 
double GetSizeLot() 
  { 
   double dLot; 
   if( LotsWayChoice == 0) 
     dLot = lotsi; 
// фиксированный процент от депозита 
   if( LotsWayChoice == 1) 
     { 
       dLot = MathCeil(AccountFreeMargin() / 10000* LotsPercent)/10; 
     } 
// фракционно-пропорциональный 
   if( LotsWayChoice == 2) 
     { 
       int k = LotsDepoForOne; 
       //----
       for(double i = 2; i <= LotsMax; i++) 
         { 
           k = k + i* LotsDeltaDepo; 
           //----
           if( k > AccountFreeMargin()) 
             { 
               dLot = ( i - 1) / 10; 
               break; 
             } 
         } 
     } 
// фракционно-фиксированный 
   if( LotsWayChoice == 3) 
     { 
       dLot = MathCeil((AccountFreeMargin() - LotsDepoForOne) / LotsDeltaDepo)/10; 
     } 
//----
   if( dLot < 0.1)  
       dLot = 0.1; 
//----
   if( dLot > LotsMax) 
       dLot = LotsMax;   
   return( dLot);  
  } 
 

我的版本

//+------------------------------------------------------------------+
//| Расчет лота соотв риску и балансу                                |
//+------------------------------------------------------------------+
double CalcLotsAuto(double Risk)
{

   double LotOpt, Zalog;
   RefreshRates();
   double Marga=AccountFreeMargin();
   double Balans=AccountBalance();
   double LotMin=MarketInfo(Symbol(),MODE_MINLOT);
   double LotMax=MarketInfo(Symbol(),MODE_MAXLOT);
   double StepLot=MarketInfo(Symbol(),MODE_LOTSTEP);
   double StopLv=AccountStopoutLevel();
   int PrsMinLot=1000* LotMin;
   if( Risk<0) Risk=0;
   if( Risk>100) Risk=100; 
   if( StepLot==0.01){int step=2;}else{ step=1;}  
//---------------------------     
   Zalog=( Balans*( Risk/100));
   LotOpt=NormalizeDouble(( Zalog/1000), step);
   if( LotOpt> LotMax) LotOpt= LotMax;
   if( LotOpt< LotMin) LotOpt= LotMin;
   //if(Marga<Sredstva/2){return(0);}
   return( LotOpt);
}
 

浩博23

小小的改进带来了这样的结果:从08年5月1日到12月1日,净利润6772,LotsPercent=2。初始存款=1000,相对缩水=26.38%。损失=72,仅来自未完成的交易。一共有186个交易。


 
工作室里的返工!
 
如果专家有兴趣,我才会把定稿交给专家的作者。
 
khorosh >> :
只有在专家表现出兴趣的情况下,我才会把返工的作品交给专家的作者。

你不需要密码。分享这些原则。

 
granit77 >> :

你不需要密码。分享这些原则。

作为一个活跃的论坛成员,我也可以把代码发给你,只要给我地址。
 

兄弟们,我在晚上乱搞,我很震惊。总之,通过随机过滤和OsMoy,你可以赚很多钱。我有一个开始的1000英镑,从10到28得出21000,缩水60.66%!!!!

但我的存款的2%用于交易......这有点不公平......完善呢,我们可以做一个交换。花岗岩和KHorosh,给我们你的肥皂。我的是bghoper@mail.ru

 
xrust >> :

我的版本

我完全不明白你是如何应用的......