初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1169

 
BillionerClub:

小野,啊哈哈,一直在找那个文件,找了很久。SPC。

搜索失败,因为它都在一个 隐藏的AppData文件夹 中。

 

我没有找到如何将双数 四舍五入到最小值的方法。

例子。

   double part1=1.9/12;
   double part2=NormalizeDouble(part1,2);
   
   Comment(part1,"\n", // 0.1583333333
           part2); // 0.16

结果四舍五入为0.16,如果我们计算:0.16*12=1.92,即从1.9超调了0.02

如何将0.15833333四舍五入为0.15

 
Vitaly Muzichenko:

我没有找到如何将双数 四舍五入到最小值的方法。

例子。

结果四舍五入为0.16,如果我们计算:0.16*12=1.92,即从1.9超调了0.02

如何将0.15833333四舍五入为0.15

为清晰起见

  int n=0.15833333*100;
  double m=n/100.0;
  string s=DoubleToString(m,2);
 
Alexey Viktorov:

为清晰起见

谢谢你,它的工作是应该的!

 
对不起,我的问题很愚蠢,但如果价差是零头,该怎么办?CopySpread 函数是 int类型,如果spread是0.8,则返回1
 
VANDER:
对不起,我的问题很愚蠢,但如果价差是零头的,怎么办?CopySpread 函数具有 int类型,例如,如果传播是0.8,它就会返回1

应该返回一个'8'。做错了事

 
现在澄清了,工具上的点差约为0.02,在这种情况下应该如何回报?
 
VANDER:
现在澄清了,工具上的点差约为0.02,在这种情况下应该返回什么?

你向谁核实了?

 
VANDER:
现在澄清了,工具上的点差约为0.02,在这种情况下,它应该返回什么?

它不是这样工作的

 

例如,像这样

//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
MqlTick Last;
int sp1[1];
double sp2;
//+------------------------------------------------------------------+
int OnInit()
  {return(INIT_SUCCEEDED);}
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  { }
//+------------------------------------------------------------------+
void OnTick()
  {
   CopySpread("BR-2.20",PERIOD_CURRENT,0,1,sp1);
   SymbolInfoTick("BR-2.20",Last);
   sp2=Last.ask-Last.bid;
   Print((string)sp1[0]+", "+(string)sp2);
  }
//+------------------------------------------------------------------+

2020.01.03 21:16:32.818 Spred (BR-2.20,M1) 1, 0.0100000000000000512

2020.01.03 21:16:32.824 Spred (BR-2.20,M1) 1, 0.02000000000001023

2020.01.03 21:16:33.830 Spred (BR-2.20,M1) 1, 0.020000000001023

2020.01.03 21:16:34.371 Spred (BR-2.20,M1) 1, 0.0100000000000000512

2020.01.03 21:16:34.466 Spred (BR-2.20,M1) 1, 0.010000000000512

2020.01.03 21:16:34.570 Spred (BR-2.20,M1) 1, 0.00999999999905

2020.01.03 21:16:34.585 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:34.591 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:34.629 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:35.321 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:35.335 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:35.352 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:35.684 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:35.790 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:35.981 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:36.220 Spred (BR-2.20,M1) 1, 0.010000000000000000512

2020.01.03 21:16:36.235 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:36.311 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:36.769 Spred (BR-2.20,M1) 1, 0.009999999999990905

2020.01.03 21:16:37.373 Spred (BR-2.20,M1) 1, 0.01999999999999602

2020.01.03 21:16:38.049 Spred (BR-2.20,M1) 1, 0.01999999999999602