新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1049

 
Вероника Баранова:
我想知道你是否能帮助我。请。我害怕做错事。

当你注册一个真实账户 时,你已经在DC网站上注册了一个个人账户,你可以在那里修改你的密码。

或者打电话给支持部门,他们会告诉你一切。

 

请告知如何实施

Lots=NormalizeDouble(AccountBalance()/CheckLots,2);

向下舍入,即如果AccountBalance()/CheckLots = 0.019

四舍五入到0,01

 
MakarFX:

请告知如何实施

向下舍入,即如果AccountBalance()/CheckLots = 0.019

四舍五入到0.01

看到

Вопросы от начинающих MQL5 MT5 MetaTrader 5
Вопросы от начинающих MQL5 MT5 MetaTrader 5
  • 2020.01.02
  • www.mql5.com
Подскажите пожалуйста, такой показатель тестера в жизни реален? И хороший это или плохой результат за год с депо 3000...
 
Vitaly Muzichenko:

看一看这个

以不同的、更简单的方式解决了这个问题,我想。

NormalizeDouble 0.5舍入为1,将0.4舍入为0 解决方案是

Lots=NormalizeDouble(AccountBalance()/CheckLots-0.005,2);
 
Документация по MQL5: Математические функции / MathFloor
Документация по MQL5: Математические функции / MathFloor
  • www.mql5.com
Математические функции / MathFloor - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

返回最接近底部的整数 数字值。

0.01是一个整数吗?

 
Vitaly Muzichenko:

返回最接近底部的整数 值。

0.01是一个整数吗?

MakarFX

你能告诉我如何实现

Lots=NormalizeDouble(AccountBalance()/CheckLots,2);

向下舍入,即如果AccountBalance()/CheckLots = 0.019

四舍五入到0,01


Lots=NormalizeDouble(AccountBalance()/CheckLots,

2); => int    Digits = 2                         ;
    => double Power  = MathPow   ( 10 , Digits ) ;

    => double Lots   = MathFloor ( Power * AccountBalance / CheckLots ) / Power ;

int OnInit () {
Print ( "==================================================================" ) ;

int    Digits = 2                       ;
double Power  = MathPow ( 10 , Digits ) ;

double AccountBalance =  0.19 ;
double CheckLots      = 10.00 ;

double Lots1 =                       AccountBalance / CheckLots           ;
double Lots2 = MathFloor   ( Power * AccountBalance / CheckLots ) / Power ;

Print ( "AccountBalance= " , AccountBalance ) ;
Print ( "CheckLots=      " , CheckLots      ) ;

Print ( "Lots1=          " , Lots1          ) ;
Print ( "Lots2=          " , Lots2          ) ;

Print ( "==================================================================" ) ;
return INIT_SUCCEEDED ; }
void   OnTick () {}

1

Документация по MQL5: Математические функции / MathFloor
Документация по MQL5: Математические функции / MathFloor
  • www.mql5.com
Математические функции / MathFloor - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

另一个问题

   ObjectSetText("Lev",StringConcatenate("Lev: ",DoubleToStr(MarketInfo(Symbol(),MODE_STOPLEVEL),0)),SizeINFO,"Times New Roman",InfoColor);

如何设置字体厚度FW_BOLD

我担心我不会用语言来理解它。

P.S. MQL4参考没有帮助(。

 
Airat Safin:

这个问题已经得到了解决
 

第2次尝试。

请帮助,这似乎是一个简单的问题。

ObjectSetText("Lev",StringConcatenate("Lev: ",DoubleToStr(MarketInfo(Symbol(),MODE_STOPLEVEL),0)),SizeInfo,"Times New Roman",InfoColor);

如何设置字体厚度FW_BOLD,或者说如何与

 

TextSetFont( "Time New Roman",9,FW_BOLD,0);
我担心我不会用语言来理解它。

P.S. MQL4参考没有帮助(。