Advertisement
Guest User

Untitled

a guest
May 24th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 62.28 KB | None | 0 0
  1. Ask = 1.19234000
  2. Bid = 1.19216000
  3. ticket = OrderSend(Symbol(),1,0.14800000,1.19216000,3,0,0);
  4. REQUIRE( 1 == OrderTicket() );
  5. REQUIRE( 1 == OrderType() );
  6. REQUIRE( fabs(-2.52000000 - OrderProfit()) < 1e-9 );
  7. REQUIRE( fabs(1.19216000 - OrderOpenPrice()) < 1e-9 );
  8. REQUIRE( fabs(0.14000000 - OrderLots()) < 1e-9 );
  9. REQUIRE( fabs(50000.00000000 - AccountBalance()) < 1e-9 );
  10. REQUIRE( fabs(49997.48000000 - AccountEquity()) < 1e-9 );
  11. REQUIRE( fabs(49830.56500000 - AccountFreeMargin()) < 1e-9 );
  12. REQUIRE( fabs(-2.52000000 - AccountProfit()) < 1e-9 );
  13. ticket = OrderClose(1,0.14000000,1.19234000,3);
  14. REQUIRE( fabs(49997.48000000 - AccountBalance()) < 1e-9 );
  15. REQUIRE( fabs(49997.48000000 - AccountEquity()) < 1e-9 );
  16. REQUIRE( fabs(49997.48000000 - AccountFreeMargin()) < 1e-9 );
  17. REQUIRE( fabs(0.00000000 - AccountProfit()) < 1e-9 );
  18. Ask = 1.19575000
  19. Bid = 1.19557000
  20. ticket = OrderSend(Symbol(),0,0.19200000,1.19575000,3,0,0);
  21. REQUIRE( 2 == OrderTicket() );
  22. REQUIRE( 0 == OrderType() );
  23. REQUIRE( fabs(-3.42000000 - OrderProfit()) < 1e-9 );
  24. REQUIRE( fabs(1.19575000 - OrderOpenPrice()) < 1e-9 );
  25. REQUIRE( fabs(0.19000000 - OrderLots()) < 1e-9 );
  26. REQUIRE( fabs(49997.48000000 - AccountBalance()) < 1e-9 );
  27. REQUIRE( fabs(49994.06000000 - AccountEquity()) < 1e-9 );
  28. REQUIRE( fabs(49766.88460000 - AccountFreeMargin()) < 1e-9 );
  29. REQUIRE( fabs(-3.42000000 - AccountProfit()) < 1e-9 );
  30. ticket = OrderClose(2,0.19000000,1.19557000,3);
  31. REQUIRE( fabs(49994.06000000 - AccountBalance()) < 1e-9 );
  32. REQUIRE( fabs(49994.06000000 - AccountEquity()) < 1e-9 );
  33. REQUIRE( fabs(49994.06000000 - AccountFreeMargin()) < 1e-9 );
  34. REQUIRE( fabs(0.00000000 - AccountProfit()) < 1e-9 );
  35. Ask = 1.20742000
  36. Bid = 1.20724000
  37. ticket = OrderSend(Symbol(),1,0.11500000,1.20724000,3,0,0);
  38. REQUIRE( 3 == OrderTicket() );
  39. REQUIRE( 1 == OrderType() );
  40. REQUIRE( fabs(-1.98000000 - OrderProfit()) < 1e-9 );
  41. REQUIRE( fabs(1.20724000 - OrderOpenPrice()) < 1e-9 );
  42. REQUIRE( fabs(0.11000000 - OrderLots()) < 1e-9 );
  43. REQUIRE( fabs(49994.06000000 - AccountBalance()) < 1e-9 );
  44. REQUIRE( fabs(49992.08000000 - AccountEquity()) < 1e-9 );
  45. REQUIRE( fabs(49859.27370000 - AccountFreeMargin()) < 1e-9 );
  46. REQUIRE( fabs(-1.98000000 - AccountProfit()) < 1e-9 );
  47. Ask = 1.22820000
  48. Bid = 1.22802000
  49. ticket = OrderSend(Symbol(),0,0.23500000,1.22820000,3,0,0);
  50. REQUIRE( 4 == OrderTicket() );
  51. REQUIRE( 0 == OrderType() );
  52. REQUIRE( fabs(-4.14000000 - OrderProfit()) < 1e-9 );
  53. REQUIRE( fabs(1.22820000 - OrderOpenPrice()) < 1e-9 );
  54. REQUIRE( fabs(0.23000000 - OrderLots()) < 1e-9 );
  55. REQUIRE( fabs(49994.06000000 - AccountBalance()) < 1e-9 );
  56. REQUIRE( fabs(49759.24560000 - AccountEquity()) < 1e-9 );
  57. REQUIRE( fabs(49478.32657647 - AccountFreeMargin()) < 1e-9 );
  58. REQUIRE( fabs(-234.81440000 - AccountProfit()) < 1e-9 );
  59. ticket = OrderClose(4,0.23000000,1.22802000,3);
  60. REQUIRE( fabs(49989.92000000 - AccountBalance()) < 1e-9 );
  61. REQUIRE( fabs(49759.24560000 - AccountEquity()) < 1e-9 );
  62. REQUIRE( fabs(49626.43930000 - AccountFreeMargin()) < 1e-9 );
  63. REQUIRE( fabs(-230.67440000 - AccountProfit()) < 1e-9 );
  64. Ask = 1.22066000
  65. Bid = 1.22048000
  66. ticket = OrderSend(Symbol(),0,0.71300000,1.22066000,3,0,0);
  67. REQUIRE( 5 == OrderTicket() );
  68. REQUIRE( 0 == OrderType() );
  69. REQUIRE( fabs(-12.78000000 - OrderProfit()) < 1e-9 );
  70. REQUIRE( fabs(1.22066000 - OrderOpenPrice()) < 1e-9 );
  71. REQUIRE( fabs(0.71000000 - OrderLots()) < 1e-9 );
  72. REQUIRE( fabs(49989.92000000 - AccountBalance()) < 1e-9 );
  73. REQUIRE( fabs(49829.29120000 - AccountEquity()) < 1e-9 );
  74. REQUIRE( fabs(48963.94752927 - AccountFreeMargin()) < 1e-9 );
  75. REQUIRE( fabs(-160.62880000 - AccountProfit()) < 1e-9 );
  76. Ask = 1.22241000
  77. Bid = 1.22223000
  78. ticket = OrderSend(Symbol(),1,0.73600000,1.22223000,3,0,0);
  79. REQUIRE( 6 == OrderTicket() );
  80. REQUIRE( 1 == OrderType() );
  81. REQUIRE( fabs(-13.14000000 - OrderProfit()) < 1e-9 );
  82. REQUIRE( fabs(1.22223000 - OrderOpenPrice()) < 1e-9 );
  83. REQUIRE( fabs(0.73000000 - OrderLots()) < 1e-9 );
  84. REQUIRE( fabs(49989.92000000 - AccountBalance()) < 1e-9 );
  85. REQUIRE( fabs(49921.27110000 - AccountEquity()) < 1e-9 );
  86. REQUIRE( fabs(48896.08925226 - AccountFreeMargin()) < 1e-9 );
  87. REQUIRE( fabs(-68.64890000 - AccountProfit()) < 1e-9 );
  88. ticket = OrderClose(6,0.73000000,1.22241000,3);
  89. REQUIRE( fabs(49976.78000000 - AccountBalance()) < 1e-9 );
  90. REQUIRE( fabs(49921.27110000 - AccountEquity()) < 1e-9 );
  91. REQUIRE( fabs(49055.92742927 - AccountFreeMargin()) < 1e-9 );
  92. REQUIRE( fabs(-55.50890000 - AccountProfit()) < 1e-9 );
  93. Ask = 1.22579000
  94. Bid = 1.22561000
  95. ticket = OrderSend(Symbol(),1,0.16200000,1.22561000,3,0,0);
  96. REQUIRE( 7 == OrderTicket() );
  97. REQUIRE( 1 == OrderType() );
  98. REQUIRE( fabs(-2.88000000 - OrderProfit()) < 1e-9 );
  99. REQUIRE( fabs(1.22561000 - OrderOpenPrice()) < 1e-9 );
  100. REQUIRE( fabs(0.16000000 - OrderLots()) < 1e-9 );
  101. REQUIRE( fabs(49976.78000000 - AccountBalance()) < 1e-9 );
  102. REQUIRE( fabs(50121.55080000 - AccountEquity()) < 1e-9 );
  103. REQUIRE( fabs(49255.40658571 - AccountFreeMargin()) < 1e-9 );
  104. REQUIRE( fabs(144.77080000 - AccountProfit()) < 1e-9 );
  105. ticket = OrderClose(3,0.11000000,1.22579000,3);
  106. REQUIRE( fabs(49772.04360000 - AccountBalance()) < 1e-9 );
  107. REQUIRE( fabs(50121.55080000 - AccountEquity()) < 1e-9 );
  108. REQUIRE( fabs(49254.27625172 - AccountFreeMargin()) < 1e-9 );
  109. REQUIRE( fabs(349.50720000 - AccountProfit()) < 1e-9 );
  110. Ask = 1.22365000
  111. Bid = 1.22347000
  112. ticket = OrderSend(Symbol(),0,0.22800000,1.22365000,3,0,0);
  113. REQUIRE( 8 == OrderTicket() );
  114. REQUIRE( 0 == OrderType() );
  115. REQUIRE( fabs(-3.96000000 - OrderProfit()) < 1e-9 );
  116. REQUIRE( fabs(1.22365000 - OrderOpenPrice()) < 1e-9 );
  117. REQUIRE( fabs(0.22000000 - OrderLots()) < 1e-9 );
  118. REQUIRE( fabs(49772.04360000 - AccountBalance()) < 1e-9 );
  119. REQUIRE( fabs(49999.95870000 - AccountEquity()) < 1e-9 );
  120. REQUIRE( fabs(48863.56704220 - AccountFreeMargin()) < 1e-9 );
  121. REQUIRE( fabs(227.91510000 - AccountProfit()) < 1e-9 );
  122. ticket = OrderClose(8,0.22000000,1.22347000,3);
  123. REQUIRE( fabs(49768.08360000 - AccountBalance()) < 1e-9 );
  124. REQUIRE( fabs(49999.95870000 - AccountEquity()) < 1e-9 );
  125. REQUIRE( fabs(49132.68415172 - AccountFreeMargin()) < 1e-9 );
  126. REQUIRE( fabs(231.87510000 - AccountProfit()) < 1e-9 );
  127. Ask = 1.22723000
  128. Bid = 1.22705000
  129. ticket = OrderSend(Symbol(),0,0.17300000,1.22723000,3,0,0);
  130. REQUIRE( 9 == OrderTicket() );
  131. REQUIRE( 0 == OrderType() );
  132. REQUIRE( fabs(-3.06000000 - OrderProfit()) < 1e-9 );
  133. REQUIRE( fabs(1.22723000 - OrderOpenPrice()) < 1e-9 );
  134. REQUIRE( fabs(0.17000000 - OrderLots()) < 1e-9 );
  135. REQUIRE( fabs(49768.08360000 - AccountBalance()) < 1e-9 );
  136. REQUIRE( fabs(50193.93450000 - AccountEquity()) < 1e-9 );
  137. REQUIRE( fabs(49118.19330769 - AccountFreeMargin()) < 1e-9 );
  138. REQUIRE( fabs(425.85090000 - AccountProfit()) < 1e-9 );
  139. Ask = 1.23196000
  140. Bid = 1.23178000
  141. ticket = OrderSend(Symbol(),0,0.82300000,1.23196000,3,0,0);
  142. REQUIRE( 10 == OrderTicket() );
  143. REQUIRE( 0 == OrderType() );
  144. REQUIRE( fabs(-14.76000000 - OrderProfit()) < 1e-9 );
  145. REQUIRE( fabs(1.23196000 - OrderOpenPrice()) < 1e-9 );
  146. REQUIRE( fabs(0.82000000 - OrderLots()) < 1e-9 );
  147. REQUIRE( fabs(49768.08360000 - AccountBalance()) < 1e-9 );
  148. REQUIRE( fabs(50519.85850000 - AccountEquity()) < 1e-9 );
  149. REQUIRE( fabs(48434.64955914 - AccountFreeMargin()) < 1e-9 );
  150. REQUIRE( fabs(751.77490000 - AccountProfit()) < 1e-9 );
  151. Ask = 1.24128000
  152. Bid = 1.24110000
  153. ticket = OrderSend(Symbol(),0,0.68300000,1.24128000,3,0,0);
  154. REQUIRE( 11 == OrderTicket() );
  155. REQUIRE( 0 == OrderType() );
  156. REQUIRE( fabs(-12.24000000 - OrderProfit()) < 1e-9 );
  157. REQUIRE( fabs(1.24128000 - OrderOpenPrice()) < 1e-9 );
  158. REQUIRE( fabs(0.68000000 - OrderLots()) < 1e-9 );
  159. REQUIRE( fabs(49768.08360000 - AccountBalance()) < 1e-9 );
  160. REQUIRE( fabs(51944.08230000 - AccountEquity()) < 1e-9 );
  161. REQUIRE( fabs(49015.48939528 - AccountFreeMargin()) < 1e-9 );
  162. REQUIRE( fabs(2175.99870000 - AccountProfit()) < 1e-9 );
  163. ticket = OrderClose(7,0.16000000,1.24128000,3);
  164. REQUIRE( fabs(49516.19880000 - AccountBalance()) < 1e-9 );
  165. REQUIRE( fabs(51944.08230000 - AccountEquity()) < 1e-9 );
  166. REQUIRE( fabs(49014.72120000 - AccountFreeMargin()) < 1e-9 );
  167. REQUIRE( fabs(2427.88350000 - AccountProfit()) < 1e-9 );
  168. Ask = 1.24580000
  169. Bid = 1.24562000
  170. ticket = OrderSend(Symbol(),0,0.73000000,1.24580000,3,0,0);
  171. REQUIRE( 12 == OrderTicket() );
  172. REQUIRE( 0 == OrderType() );
  173. REQUIRE( fabs(-13.14000000 - OrderProfit()) < 1e-9 );
  174. REQUIRE( fabs(1.24580000 - OrderOpenPrice()) < 1e-9 );
  175. REQUIRE( fabs(0.73000000 - OrderLots()) < 1e-9 );
  176. REQUIRE( fabs(49516.19880000 - AccountBalance()) < 1e-9 );
  177. REQUIRE( fabs(53007.48770000 - AccountEquity()) < 1e-9 );
  178. REQUIRE( fabs(49168.75830000 - AccountFreeMargin()) < 1e-9 );
  179. REQUIRE( fabs(3491.28890000 - AccountProfit()) < 1e-9 );
  180. ticket = OrderClose(12,0.73000000,1.24562000,3);
  181. REQUIRE( fabs(49503.05880000 - AccountBalance()) < 1e-9 );
  182. REQUIRE( fabs(53007.48770000 - AccountEquity()) < 1e-9 );
  183. REQUIRE( fabs(50078.12660000 - AccountFreeMargin()) < 1e-9 );
  184. REQUIRE( fabs(3504.42890000 - AccountProfit()) < 1e-9 );
  185. Ask = 1.24222000
  186. Bid = 1.24204000
  187. ticket = OrderSend(Symbol(),1,0.55100000,1.24204000,3,0,0);
  188. REQUIRE( 13 == OrderTicket() );
  189. REQUIRE( 1 == OrderType() );
  190. REQUIRE( fabs(-9.90000000 - OrderProfit()) < 1e-9 );
  191. REQUIRE( fabs(1.24204000 - OrderOpenPrice()) < 1e-9 );
  192. REQUIRE( fabs(0.55000000 - OrderLots()) < 1e-9 );
  193. REQUIRE( fabs(49503.05880000 - AccountBalance()) < 1e-9 );
  194. REQUIRE( fabs(52146.33310000 - AccountEquity()) < 1e-9 );
  195. REQUIRE( fabs(49211.92095392 - AccountFreeMargin()) < 1e-9 );
  196. REQUIRE( fabs(2643.27430000 - AccountProfit()) < 1e-9 );
  197. ticket = OrderClose(5,0.71000000,1.24204000,3);
  198. REQUIRE( fabs(51024.08470000 - AccountBalance()) < 1e-9 );
  199. REQUIRE( fabs(52146.33310000 - AccountEquity()) < 1e-9 );
  200. REQUIRE( fabs(50080.70265270 - AccountFreeMargin()) < 1e-9 );
  201. REQUIRE( fabs(1122.24840000 - AccountProfit()) < 1e-9 );
  202. Ask = 1.24302000
  203. Bid = 1.24284000
  204. ticket = OrderSend(Symbol(),0,0.91300000,1.24302000,3,0,0);
  205. REQUIRE( 14 == OrderTicket() );
  206. REQUIRE( 0 == OrderType() );
  207. REQUIRE( fabs(-16.38000000 - OrderProfit()) < 1e-9 );
  208. REQUIRE( fabs(1.24302000 - OrderOpenPrice()) < 1e-9 );
  209. REQUIRE( fabs(0.91000000 - OrderLots()) < 1e-9 );
  210. REQUIRE( fabs(51024.08470000 - AccountBalance()) < 1e-9 );
  211. REQUIRE( fabs(52219.53220000 - AccountEquity()) < 1e-9 );
  212. REQUIRE( fabs(49023.79896166 - AccountFreeMargin()) < 1e-9 );
  213. REQUIRE( fabs(1195.44750000 - AccountProfit()) < 1e-9 );
  214. Ask = 1.24525000
  215. Bid = 1.24507000
  216. ticket = OrderSend(Symbol(),0,0.12200000,1.24525000,3,0,0);
  217. REQUIRE( 15 == OrderTicket() );
  218. REQUIRE( 0 == OrderType() );
  219. REQUIRE( fabs(-2.16000000 - OrderProfit()) < 1e-9 );
  220. REQUIRE( fabs(1.24525000 - OrderOpenPrice()) < 1e-9 );
  221. REQUIRE( fabs(0.12000000 - OrderLots()) < 1e-9 );
  222. REQUIRE( fabs(51024.08470000 - AccountBalance()) < 1e-9 );
  223. REQUIRE( fabs(52670.34160000 - AccountEquity()) < 1e-9 );
  224. REQUIRE( fabs(49325.32123692 - AccountFreeMargin()) < 1e-9 );
  225. REQUIRE( fabs(1646.25690000 - AccountProfit()) < 1e-9 );
  226. ticket = OrderClose(10,0.82000000,1.24507000,3);
  227. REQUIRE( fabs(52100.99890000 - AccountBalance()) < 1e-9 );
  228. REQUIRE( fabs(52670.34160000 - AccountEquity()) < 1e-9 );
  229. REQUIRE( fabs(50336.75871934 - AccountFreeMargin()) < 1e-9 );
  230. REQUIRE( fabs(569.34270000 - AccountProfit()) < 1e-9 );
  231. Ask = 1.24937000
  232. Bid = 1.24919000
  233. ticket = OrderSend(Symbol(),1,0.08700000,1.24919000,3,0,0);
  234. REQUIRE( 16 == OrderTicket() );
  235. REQUIRE( 1 == OrderType() );
  236. REQUIRE( fabs(-1.44000000 - OrderProfit()) < 1e-9 );
  237. REQUIRE( fabs(1.24919000 - OrderOpenPrice()) < 1e-9 );
  238. REQUIRE( fabs(0.08000000 - OrderLots()) < 1e-9 );
  239. REQUIRE( fabs(52100.99890000 - AccountBalance()) < 1e-9 );
  240. REQUIRE( fabs(53217.00680000 - AccountEquity()) < 1e-9 );
  241. REQUIRE( fabs(50882.94380717 - AccountFreeMargin()) < 1e-9 );
  242. REQUIRE( fabs(1116.00790000 - AccountProfit()) < 1e-9 );
  243. Ask = 1.24598000
  244. Bid = 1.24580000
  245. ticket = OrderSend(Symbol(),1,0.90000000,1.24580000,3,0,0);
  246. REQUIRE( 17 == OrderTicket() );
  247. REQUIRE( 1 == OrderType() );
  248. REQUIRE( fabs(-16.20000000 - OrderProfit()) < 1e-9 );
  249. REQUIRE( fabs(1.24580000 - OrderOpenPrice()) < 1e-9 );
  250. REQUIRE( fabs(0.90000000 - OrderLots()) < 1e-9 );
  251. REQUIRE( fabs(52100.99890000 - AccountBalance()) < 1e-9 );
  252. REQUIRE( fabs(52777.02200000 - AccountEquity()) < 1e-9 );
  253. REQUIRE( fabs(50440.79209032 - AccountFreeMargin()) < 1e-9 );
  254. REQUIRE( fabs(676.02310000 - AccountProfit()) < 1e-9 );
  255. Ask = 1.23951000
  256. Bid = 1.23933000
  257. ticket = OrderSend(Symbol(),1,0.89300000,1.23933000,3,0,0);
  258. REQUIRE( 18 == OrderTicket() );
  259. REQUIRE( 1 == OrderType() );
  260. REQUIRE( fabs(-16.02000000 - OrderProfit()) < 1e-9 );
  261. REQUIRE( fabs(1.23933000 - OrderOpenPrice()) < 1e-9 );
  262. REQUIRE( fabs(0.89000000 - OrderLots()) < 1e-9 );
  263. REQUIRE( fabs(52100.99890000 - AccountBalance()) < 1e-9 );
  264. REQUIRE( fabs(52533.58120000 - AccountEquity()) < 1e-9 );
  265. REQUIRE( fabs(49527.93714791 - AccountFreeMargin()) < 1e-9 );
  266. REQUIRE( fabs(432.58230000 - AccountProfit()) < 1e-9 );
  267. ticket = OrderClose(13,0.55000000,1.23951000,3);
  268. REQUIRE( fabs(52236.14490000 - AccountBalance()) < 1e-9 );
  269. REQUIRE( fabs(52533.58120000 - AccountEquity()) < 1e-9 );
  270. REQUIRE( fabs(50198.65343573 - AccountFreeMargin()) < 1e-9 );
  271. REQUIRE( fabs(297.43630000 - AccountProfit()) < 1e-9 );
  272. Ask = 1.23816000
  273. Bid = 1.23798000
  274. ticket = OrderSend(Symbol(),1,0.52100000,1.23798000,3,0,0);
  275. REQUIRE( 19 == OrderTicket() );
  276. REQUIRE( 1 == OrderType() );
  277. REQUIRE( fabs(-9.36000000 - OrderProfit()) < 1e-9 );
  278. REQUIRE( fabs(1.23798000 - OrderOpenPrice()) < 1e-9 );
  279. REQUIRE( fabs(0.52000000 - OrderLots()) < 1e-9 );
  280. REQUIRE( fabs(52236.14490000 - AccountBalance()) < 1e-9 );
  281. REQUIRE( fabs(52521.54680000 - AccountEquity()) < 1e-9 );
  282. REQUIRE( fabs(49554.34663162 - AccountFreeMargin()) < 1e-9 );
  283. REQUIRE( fabs(285.40190000 - AccountProfit()) < 1e-9 );
  284. ticket = OrderClose(16,0.08000000,1.23816000,3);
  285. REQUIRE( fabs(52324.13530000 - AccountBalance()) < 1e-9 );
  286. REQUIRE( fabs(52521.54680000 - AccountEquity()) < 1e-9 );
  287. REQUIRE( fabs(49654.00999642 - AccountFreeMargin()) < 1e-9 );
  288. REQUIRE( fabs(197.41150000 - AccountProfit()) < 1e-9 );
  289. Ask = 1.22574000
  290. Bid = 1.22556000
  291. ticket = OrderSend(Symbol(),1,0.32300000,1.22556000,3,0,0);
  292. REQUIRE( 20 == OrderTicket() );
  293. REQUIRE( 1 == OrderType() );
  294. REQUIRE( fabs(-5.76000000 - OrderProfit()) < 1e-9 );
  295. REQUIRE( fabs(1.22556000 - OrderOpenPrice()) < 1e-9 );
  296. REQUIRE( fabs(0.32000000 - OrderLots()) < 1e-9 );
  297. REQUIRE( fabs(52324.13530000 - AccountBalance()) < 1e-9 );
  298. REQUIRE( fabs(53042.71880000 - AccountEquity()) < 1e-9 );
  299. REQUIRE( fabs(49780.87867783 - AccountFreeMargin()) < 1e-9 );
  300. REQUIRE( fabs(718.58350000 - AccountProfit()) < 1e-9 );
  301. ticket = OrderClose(18,0.89000000,1.22574000,3);
  302. REQUIRE( fabs(53529.01730000 - AccountBalance()) < 1e-9 );
  303. REQUIRE( fabs(53042.71880000 - AccountEquity()) < 1e-9 );
  304. REQUIRE( fabs(50710.68064199 - AccountFreeMargin()) < 1e-9 );
  305. REQUIRE( fabs(-486.29850000 - AccountProfit()) < 1e-9 );
  306. Ask = 1.22587000
  307. Bid = 1.22569000
  308. ticket = OrderSend(Symbol(),0,0.37300000,1.22587000,3,0,0);
  309. REQUIRE( 21 == OrderTicket() );
  310. REQUIRE( 0 == OrderType() );
  311. REQUIRE( fabs(-6.66000000 - OrderProfit()) < 1e-9 );
  312. REQUIRE( fabs(1.22587000 - OrderOpenPrice()) < 1e-9 );
  313. REQUIRE( fabs(0.37000000 - OrderLots()) < 1e-9 );
  314. REQUIRE( fabs(53529.01730000 - AccountBalance()) < 1e-9 );
  315. REQUIRE( fabs(53036.68960000 - AccountEquity()) < 1e-9 );
  316. REQUIRE( fabs(50248.74646090 - AccountFreeMargin()) < 1e-9 );
  317. REQUIRE( fabs(-492.32770000 - AccountProfit()) < 1e-9 );
  318. ticket = OrderClose(19,0.52000000,1.22587000,3);
  319. REQUIRE( fabs(54156.03330000 - AccountBalance()) < 1e-9 );
  320. REQUIRE( fabs(53036.68960000 - AccountEquity()) < 1e-9 );
  321. REQUIRE( fabs(50248.40394438 - AccountFreeMargin()) < 1e-9 );
  322. REQUIRE( fabs(-1119.34370000 - AccountProfit()) < 1e-9 );
  323. Ask = 1.22642000
  324. Bid = 1.22624000
  325. ticket = OrderSend(Symbol(),0,0.63500000,1.22642000,3,0,0);
  326. REQUIRE( 22 == OrderTicket() );
  327. REQUIRE( 0 == OrderType() );
  328. REQUIRE( fabs(-11.34000000 - OrderProfit()) < 1e-9 );
  329. REQUIRE( fabs(1.22642000 - OrderOpenPrice()) < 1e-9 );
  330. REQUIRE( fabs(0.63000000 - OrderLots()) < 1e-9 );
  331. REQUIRE( fabs(54156.03330000 - AccountBalance()) < 1e-9 );
  332. REQUIRE( fabs(53081.47330000 - AccountEquity()) < 1e-9 );
  333. REQUIRE( fabs(49518.17995366 - AccountFreeMargin()) < 1e-9 );
  334. REQUIRE( fabs(-1074.56000000 - AccountProfit()) < 1e-9 );
  335. ticket = OrderClose(9,0.17000000,1.22624000,3);
  336. REQUIRE( fabs(54140.32530000 - AccountBalance()) < 1e-9 );
  337. REQUIRE( fabs(53081.47330000 - AccountEquity()) < 1e-9 );
  338. REQUIRE( fabs(49727.32753868 - AccountFreeMargin()) < 1e-9 );
  339. REQUIRE( fabs(-1058.85200000 - AccountProfit()) < 1e-9 );
  340. Ask = 1.23443000
  341. Bid = 1.23425000
  342. ticket = OrderSend(Symbol(),1,0.22800000,1.23425000,3,0,0);
  343. REQUIRE( 23 == OrderTicket() );
  344. REQUIRE( 1 == OrderType() );
  345. REQUIRE( fabs(-3.96000000 - OrderProfit()) < 1e-9 );
  346. REQUIRE( fabs(1.23425000 - OrderOpenPrice()) < 1e-9 );
  347. REQUIRE( fabs(0.22000000 - OrderLots()) < 1e-9 );
  348. REQUIRE( fabs(54140.32530000 - AccountBalance()) < 1e-9 );
  349. REQUIRE( fabs(54270.62880000 - AccountEquity()) < 1e-9 );
  350. REQUIRE( fabs(50916.96461928 - AccountFreeMargin()) < 1e-9 );
  351. REQUIRE( fabs(130.30350000 - AccountProfit()) < 1e-9 );
  352. ticket = OrderClose(20,0.32000000,1.23443000,3);
  353. REQUIRE( fabs(53855.48690000 - AccountBalance()) < 1e-9 );
  354. REQUIRE( fabs(54270.62880000 - AccountEquity()) < 1e-9 );
  355. REQUIRE( fabs(50914.27823342 - AccountFreeMargin()) < 1e-9 );
  356. REQUIRE( fabs(415.14190000 - AccountProfit()) < 1e-9 );
  357. Ask = 1.23988000
  358. Bid = 1.23970000
  359. ticket = OrderSend(Symbol(),0,0.15900000,1.23988000,3,0,0);
  360. REQUIRE( 24 == OrderTicket() );
  361. REQUIRE( 0 == OrderType() );
  362. REQUIRE( fabs(-2.70000000 - OrderProfit()) < 1e-9 );
  363. REQUIRE( fabs(1.23988000 - OrderOpenPrice()) < 1e-9 );
  364. REQUIRE( fabs(0.15000000 - OrderLots()) < 1e-9 );
  365. REQUIRE( fabs(53855.48690000 - AccountBalance()) < 1e-9 );
  366. REQUIRE( fabs(55134.20830000 - AccountEquity()) < 1e-9 );
  367. REQUIRE( fabs(51591.94344322 - AccountFreeMargin()) < 1e-9 );
  368. REQUIRE( fabs(1278.72140000 - AccountProfit()) < 1e-9 );
  369. ticket = OrderClose(24,0.15000000,1.23970000,3);
  370. REQUIRE( fabs(53852.78690000 - AccountBalance()) < 1e-9 );
  371. REQUIRE( fabs(55134.20830000 - AccountEquity()) < 1e-9 );
  372. REQUIRE( fabs(51777.85773342 - AccountFreeMargin()) < 1e-9 );
  373. REQUIRE( fabs(1281.42140000 - AccountProfit()) < 1e-9 );
  374. Ask = 1.25334000
  375. Bid = 1.25316000
  376. ticket = OrderSend(Symbol(),1,0.24000000,1.25316000,3,0,0);
  377. REQUIRE( 25 == OrderTicket() );
  378. REQUIRE( 1 == OrderType() );
  379. REQUIRE( fabs(-4.32000000 - OrderProfit()) < 1e-9 );
  380. REQUIRE( fabs(1.25316000 - OrderOpenPrice()) < 1e-9 );
  381. REQUIRE( fabs(0.24000000 - OrderLots()) < 1e-9 );
  382. REQUIRE( fabs(53852.78690000 - AccountBalance()) < 1e-9 );
  383. REQUIRE( fabs(57268.94630000 - AccountEquity()) < 1e-9 );
  384. REQUIRE( fabs(53910.23955061 - AccountFreeMargin()) < 1e-9 );
  385. REQUIRE( fabs(3416.15940000 - AccountProfit()) < 1e-9 );
  386. ticket = OrderClose(14,0.91000000,1.25316000,3);
  387. REQUIRE( fabs(54781.23260000 - AccountBalance()) < 1e-9 );
  388. REQUIRE( fabs(57268.94630000 - AccountEquity()) < 1e-9 );
  389. REQUIRE( fabs(55039.91362278 - AccountFreeMargin()) < 1e-9 );
  390. REQUIRE( fabs(2487.71370000 - AccountProfit()) < 1e-9 );
  391. Ask = 1.24155000
  392. Bid = 1.24137000
  393. ticket = OrderSend(Symbol(),1,0.54600000,1.24137000,3,0,0);
  394. REQUIRE( 26 == OrderTicket() );
  395. REQUIRE( 1 == OrderType() );
  396. REQUIRE( fabs(-9.72000000 - OrderProfit()) < 1e-9 );
  397. REQUIRE( fabs(1.24137000 - OrderOpenPrice()) < 1e-9 );
  398. REQUIRE( fabs(0.54000000 - OrderLots()) < 1e-9 );
  399. REQUIRE( fabs(54781.23260000 - AccountBalance()) < 1e-9 );
  400. REQUIRE( fabs(56739.64590000 - AccountEquity()) < 1e-9 );
  401. REQUIRE( fabs(54385.91609189 - AccountFreeMargin()) < 1e-9 );
  402. REQUIRE( fabs(1958.41330000 - AccountProfit()) < 1e-9 );
  403. Ask = 1.23334000
  404. Bid = 1.23316000
  405. ticket = OrderSend(Symbol(),0,0.41900000,1.23334000,3,0,0);
  406. REQUIRE( 27 == OrderTicket() );
  407. REQUIRE( 0 == OrderType() );
  408. REQUIRE( fabs(-7.38000000 - OrderProfit()) < 1e-9 );
  409. REQUIRE( fabs(1.23334000 - OrderOpenPrice()) < 1e-9 );
  410. REQUIRE( fabs(0.41000000 - OrderLots()) < 1e-9 );
  411. REQUIRE( fabs(54781.23260000 - AccountBalance()) < 1e-9 );
  412. REQUIRE( fabs(56812.98390000 - AccountEquity()) < 1e-9 );
  413. REQUIRE( fabs(54076.44919538 - AccountFreeMargin()) < 1e-9 );
  414. REQUIRE( fabs(2031.75130000 - AccountProfit()) < 1e-9 );
  415. Ask = 1.23181000
  416. Bid = 1.23163000
  417. ticket = OrderSend(Symbol(),0,0.91200000,1.23181000,3,0,0);
  418. REQUIRE( 28 == OrderTicket() );
  419. REQUIRE( 0 == OrderType() );
  420. REQUIRE( fabs(-16.38000000 - OrderProfit()) < 1e-9 );
  421. REQUIRE( fabs(1.23181000 - OrderOpenPrice()) < 1e-9 );
  422. REQUIRE( fabs(0.91000000 - OrderLots()) < 1e-9 );
  423. REQUIRE( fabs(54781.23260000 - AccountBalance()) < 1e-9 );
  424. REQUIRE( fabs(56747.92720000 - AccountEquity()) < 1e-9 );
  425. REQUIRE( fabs(52888.27787410 - AccountFreeMargin()) < 1e-9 );
  426. REQUIRE( fabs(1966.69460000 - AccountProfit()) < 1e-9 );
  427. Ask = 1.23327000
  428. Bid = 1.23309000
  429. ticket = OrderSend(Symbol(),1,0.26100000,1.23309000,3,0,0);
  430. REQUIRE( 29 == OrderTicket() );
  431. REQUIRE( 1 == OrderType() );
  432. REQUIRE( fabs(-4.68000000 - OrderProfit()) < 1e-9 );
  433. REQUIRE( fabs(1.23309000 - OrderOpenPrice()) < 1e-9 );
  434. REQUIRE( fabs(0.26000000 - OrderLots()) < 1e-9 );
  435. REQUIRE( fabs(54781.23260000 - AccountBalance()) < 1e-9 );
  436. REQUIRE( fabs(56918.52800000 - AccountEquity()) < 1e-9 );
  437. REQUIRE( fabs(53059.47587273 - AccountFreeMargin()) < 1e-9 );
  438. REQUIRE( fabs(2137.29540000 - AccountProfit()) < 1e-9 );
  439. ticket = OrderClose(25,0.24000000,1.23327000,3);
  440. REQUIRE( fabs(55257.09500000 - AccountBalance()) < 1e-9 );
  441. REQUIRE( fabs(56918.52800000 - AccountEquity()) < 1e-9 );
  442. REQUIRE( fabs(53061.90862857 - AccountFreeMargin()) < 1e-9 );
  443. REQUIRE( fabs(1661.43300000 - AccountProfit()) < 1e-9 );
  444. Ask = 1.23015000
  445. Bid = 1.22997000
  446. ticket = OrderSend(Symbol(),0,0.82400000,1.23015000,3,0,0);
  447. REQUIRE( 30 == OrderTicket() );
  448. REQUIRE( 0 == OrderType() );
  449. REQUIRE( fabs(-14.76000000 - OrderProfit()) < 1e-9 );
  450. REQUIRE( fabs(1.23015000 - OrderOpenPrice()) < 1e-9 );
  451. REQUIRE( fabs(0.82000000 - OrderLots()) < 1e-9 );
  452. REQUIRE( fabs(55257.09500000 - AccountBalance()) < 1e-9 );
  453. REQUIRE( fabs(56527.43360000 - AccountEquity()) < 1e-9 );
  454. REQUIRE( fabs(51660.54335563 - AccountFreeMargin()) < 1e-9 );
  455. REQUIRE( fabs(1270.33860000 - AccountProfit()) < 1e-9 );
  456. ticket = OrderClose(22,0.63000000,1.22997000,3);
  457. REQUIRE( fabs(55483.65560000 - AccountBalance()) < 1e-9 );
  458. REQUIRE( fabs(56527.43360000 - AccountEquity()) < 1e-9 );
  459. REQUIRE( fabs(52435.19459063 - AccountFreeMargin()) < 1e-9 );
  460. REQUIRE( fabs(1043.77800000 - AccountProfit()) < 1e-9 );
  461. Ask = 1.23420000
  462. Bid = 1.23402000
  463. ticket = OrderSend(Symbol(),0,0.79100000,1.23420000,3,0,0);
  464. REQUIRE( 31 == OrderTicket() );
  465. REQUIRE( 0 == OrderType() );
  466. REQUIRE( fabs(-14.22000000 - OrderProfit()) < 1e-9 );
  467. REQUIRE( fabs(1.23420000 - OrderOpenPrice()) < 1e-9 );
  468. REQUIRE( fabs(0.79000000 - OrderLots()) < 1e-9 );
  469. REQUIRE( fabs(55483.65560000 - AccountBalance()) < 1e-9 );
  470. REQUIRE( fabs(57075.25910000 - AccountEquity()) < 1e-9 );
  471. REQUIRE( fabs(52007.51485083 - AccountFreeMargin()) < 1e-9 );
  472. REQUIRE( fabs(1591.60350000 - AccountProfit()) < 1e-9 );
  473. ticket = OrderClose(30,0.82000000,1.23402000,3);
  474. REQUIRE( fabs(55801.26620000 - AccountBalance()) < 1e-9 );
  475. REQUIRE( fabs(57075.25910000 - AccountEquity()) < 1e-9 );
  476. REQUIRE( fabs(53017.97315231 - AccountFreeMargin()) < 1e-9 );
  477. REQUIRE( fabs(1273.99290000 - AccountProfit()) < 1e-9 );
  478. Ask = 1.22163000
  479. Bid = 1.22145000
  480. ticket = OrderSend(Symbol(),0,0.47100000,1.22163000,3,0,0);
  481. REQUIRE( 32 == OrderTicket() );
  482. REQUIRE( 0 == OrderType() );
  483. REQUIRE( fabs(-8.46000000 - OrderProfit()) < 1e-9 );
  484. REQUIRE( fabs(1.22163000 - OrderOpenPrice()) < 1e-9 );
  485. REQUIRE( fabs(0.47000000 - OrderLots()) < 1e-9 );
  486. REQUIRE( fabs(55801.26620000 - AccountBalance()) < 1e-9 );
  487. REQUIRE( fabs(55356.36470000 - AccountEquity()) < 1e-9 );
  488. REQUIRE( fabs(50722.49803333 - AccountFreeMargin()) < 1e-9 );
  489. REQUIRE( fabs(-444.90150000 - AccountProfit()) < 1e-9 );
  490. ticket = OrderClose(11,0.68000000,1.22145000,3);
  491. REQUIRE( fabs(54460.00700000 - AccountBalance()) < 1e-9 );
  492. REQUIRE( fabs(55356.36470000 - AccountEquity()) < 1e-9 );
  493. REQUIRE( fabs(51565.07023026 - AccountFreeMargin()) < 1e-9 );
  494. REQUIRE( fabs(896.35770000 - AccountProfit()) < 1e-9 );
  495. Ask = 1.22496000
  496. Bid = 1.22478000
  497. ticket = OrderSend(Symbol(),1,0.68400000,1.22478000,3,0,0);
  498. REQUIRE( 33 == OrderTicket() );
  499. REQUIRE( 1 == OrderType() );
  500. REQUIRE( fabs(-12.24000000 - OrderProfit()) < 1e-9 );
  501. REQUIRE( fabs(1.22478000 - OrderOpenPrice()) < 1e-9 );
  502. REQUIRE( fabs(0.68000000 - OrderLots()) < 1e-9 );
  503. REQUIRE( fabs(54460.00700000 - AccountBalance()) < 1e-9 );
  504. REQUIRE( fabs(55724.12360000 - AccountEquity()) < 1e-9 );
  505. REQUIRE( fabs(51936.54017566 - AccountFreeMargin()) < 1e-9 );
  506. REQUIRE( fabs(1264.11660000 - AccountProfit()) < 1e-9 );
  507. ticket = OrderClose(29,0.26000000,1.22496000,3);
  508. REQUIRE( fabs(54669.49420000 - AccountBalance()) < 1e-9 );
  509. REQUIRE( fabs(55724.12360000 - AccountEquity()) < 1e-9 );
  510. REQUIRE( fabs(51936.45747431 - AccountFreeMargin()) < 1e-9 );
  511. REQUIRE( fabs(1054.62940000 - AccountProfit()) < 1e-9 );
  512. Ask = 1.23225000
  513. Bid = 1.23207000
  514. ticket = OrderSend(Symbol(),1,0.42900000,1.23207000,3,0,0);
  515. REQUIRE( 34 == OrderTicket() );
  516. REQUIRE( 1 == OrderType() );
  517. REQUIRE( fabs(-7.56000000 - OrderProfit()) < 1e-9 );
  518. REQUIRE( fabs(1.23207000 - OrderOpenPrice()) < 1e-9 );
  519. REQUIRE( fabs(0.42000000 - OrderLots()) < 1e-9 );
  520. REQUIRE( fabs(54669.49420000 - AccountBalance()) < 1e-9 );
  521. REQUIRE( fabs(56245.89260000 - AccountEquity()) < 1e-9 );
  522. REQUIRE( fabs(52458.58199211 - AccountFreeMargin()) < 1e-9 );
  523. REQUIRE( fabs(1576.39840000 - AccountProfit()) < 1e-9 );
  524. ticket = OrderClose(15,0.12000000,1.23207000,3);
  525. REQUIRE( fabs(54512.64100000 - AccountBalance()) < 1e-9 );
  526. REQUIRE( fabs(56245.89260000 - AccountEquity()) < 1e-9 );
  527. REQUIRE( fabs(52607.33366830 - AccountFreeMargin()) < 1e-9 );
  528. REQUIRE( fabs(1733.25160000 - AccountProfit()) < 1e-9 );
  529. Ask = 1.23416000
  530. Bid = 1.23398000
  531. ticket = OrderSend(Symbol(),0,0.23000000,1.23416000,3,0,0);
  532. REQUIRE( 35 == OrderTicket() );
  533. REQUIRE( 0 == OrderType() );
  534. REQUIRE( fabs(-4.14000000 - OrderProfit()) < 1e-9 );
  535. REQUIRE( fabs(1.23416000 - OrderOpenPrice()) < 1e-9 );
  536. REQUIRE( fabs(0.23000000 - OrderLots()) < 1e-9 );
  537. REQUIRE( fabs(54512.64100000 - AccountBalance()) < 1e-9 );
  538. REQUIRE( fabs(56276.14570000 - AccountEquity()) < 1e-9 );
  539. REQUIRE( fabs(52353.82122222 - AccountFreeMargin()) < 1e-9 );
  540. REQUIRE( fabs(1763.50470000 - AccountProfit()) < 1e-9 );
  541. ticket = OrderClose(33,0.68000000,1.23416000,3);
  542. REQUIRE( fabs(53872.67940000 - AccountBalance()) < 1e-9 );
  543. REQUIRE( fabs(56276.14570000 - AccountEquity()) < 1e-9 );
  544. REQUIRE( fabs(52350.29997567 - AccountFreeMargin()) < 1e-9 );
  545. REQUIRE( fabs(2403.46630000 - AccountProfit()) < 1e-9 );
  546. Ask = 1.24195000
  547. Bid = 1.24177000
  548. ticket = OrderSend(Symbol(),1,0.27500000,1.24177000,3,0,0);
  549. REQUIRE( 36 == OrderTicket() );
  550. REQUIRE( 1 == OrderType() );
  551. REQUIRE( fabs(-4.86000000 - OrderProfit()) < 1e-9 );
  552. REQUIRE( fabs(1.24177000 - OrderOpenPrice()) < 1e-9 );
  553. REQUIRE( fabs(0.27000000 - OrderLots()) < 1e-9 );
  554. REQUIRE( fabs(53872.67940000 - AccountBalance()) < 1e-9 );
  555. REQUIRE( fabs(57127.07190000 - AccountEquity()) < 1e-9 );
  556. REQUIRE( fabs(53200.09007251 - AccountFreeMargin()) < 1e-9 );
  557. REQUIRE( fabs(3254.39250000 - AccountProfit()) < 1e-9 );
  558. Ask = 1.23134000
  559. Bid = 1.23116000
  560. ticket = OrderSend(Symbol(),1,0.14800000,1.23116000,3,0,0);
  561. REQUIRE( 37 == OrderTicket() );
  562. REQUIRE( 1 == OrderType() );
  563. REQUIRE( fabs(-2.52000000 - OrderProfit()) < 1e-9 );
  564. REQUIRE( fabs(1.23116000 - OrderOpenPrice()) < 1e-9 );
  565. REQUIRE( fabs(0.14000000 - OrderLots()) < 1e-9 );
  566. REQUIRE( fabs(53872.67940000 - AccountBalance()) < 1e-9 );
  567. REQUIRE( fabs(56238.34350000 - AccountEquity()) < 1e-9 );
  568. REQUIRE( fabs(52311.64826085 - AccountFreeMargin()) < 1e-9 );
  569. REQUIRE( fabs(2365.66410000 - AccountProfit()) < 1e-9 );
  570. ticket = OrderClose(17,0.90000000,1.23134000,3);
  571. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  572. REQUIRE( fabs(56238.34350000 - AccountEquity()) < 1e-9 );
  573. REQUIRE( fabs(52318.29636667 - AccountFreeMargin()) < 1e-9 );
  574. REQUIRE( fabs(1097.02410000 - AccountProfit()) < 1e-9 );
  575. Ask = 1.22965000
  576. Bid = 1.22947000
  577. ticket = OrderSend(Symbol(),0,0.12300000,1.22965000,3,0,0);
  578. REQUIRE( 38 == OrderTicket() );
  579. REQUIRE( 0 == OrderType() );
  580. REQUIRE( fabs(-2.16000000 - OrderProfit()) < 1e-9 );
  581. REQUIRE( fabs(1.22965000 - OrderOpenPrice()) < 1e-9 );
  582. REQUIRE( fabs(0.12000000 - OrderLots()) < 1e-9 );
  583. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  584. REQUIRE( fabs(55966.86930000 - AccountEquity()) < 1e-9 );
  585. REQUIRE( fabs(51899.15169877 - AccountFreeMargin()) < 1e-9 );
  586. REQUIRE( fabs(825.54990000 - AccountProfit()) < 1e-9 );
  587. Ask = 1.23937000
  588. Bid = 1.23919000
  589. ticket = OrderSend(Symbol(),1,0.76300000,1.23919000,3,0,0);
  590. REQUIRE( 39 == OrderTicket() );
  591. REQUIRE( 1 == OrderType() );
  592. REQUIRE( fabs(-13.68000000 - OrderProfit()) < 1e-9 );
  593. REQUIRE( fabs(1.23919000 - OrderOpenPrice()) < 1e-9 );
  594. REQUIRE( fabs(0.76000000 - OrderLots()) < 1e-9 );
  595. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  596. REQUIRE( fabs(57614.18010000 - AccountEquity()) < 1e-9 );
  597. REQUIRE( fabs(53543.51579735 - AccountFreeMargin()) < 1e-9 );
  598. REQUIRE( fabs(2472.86070000 - AccountProfit()) < 1e-9 );
  599. Ask = 1.23593000
  600. Bid = 1.23575000
  601. ticket = OrderSend(Symbol(),1,0.77800000,1.23575000,3,0,0);
  602. REQUIRE( 40 == OrderTicket() );
  603. REQUIRE( 1 == OrderType() );
  604. REQUIRE( fabs(-13.86000000 - OrderProfit()) < 1e-9 );
  605. REQUIRE( fabs(1.23575000 - OrderOpenPrice()) < 1e-9 );
  606. REQUIRE( fabs(0.77000000 - OrderLots()) < 1e-9 );
  607. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  608. REQUIRE( fabs(57269.45510000 - AccountEquity()) < 1e-9 );
  609. REQUIRE( fabs(53197.87834766 - AccountFreeMargin()) < 1e-9 );
  610. REQUIRE( fabs(2128.13570000 - AccountProfit()) < 1e-9 );
  611. Ask = 1.22901000
  612. Bid = 1.22883000
  613. ticket = OrderSend(Symbol(),1,0.41700000,1.22883000,3,0,0);
  614. REQUIRE( 41 == OrderTicket() );
  615. REQUIRE( 1 == OrderType() );
  616. REQUIRE( fabs(-7.38000000 - OrderProfit()) < 1e-9 );
  617. REQUIRE( fabs(1.22883000 - OrderOpenPrice()) < 1e-9 );
  618. REQUIRE( fabs(0.41000000 - OrderLots()) < 1e-9 );
  619. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  620. REQUIRE( fabs(57135.35930000 - AccountEquity()) < 1e-9 );
  621. REQUIRE( fabs(52781.04243455 - AccountFreeMargin()) < 1e-9 );
  622. REQUIRE( fabs(1994.03990000 - AccountProfit()) < 1e-9 );
  623. Ask = 1.23489000
  624. Bid = 1.23471000
  625. ticket = OrderSend(Symbol(),0,0.21900000,1.23489000,3,0,0);
  626. REQUIRE( 42 == OrderTicket() );
  627. REQUIRE( 0 == OrderType() );
  628. REQUIRE( fabs(-3.78000000 - OrderProfit()) < 1e-9 );
  629. REQUIRE( fabs(1.23489000 - OrderOpenPrice()) < 1e-9 );
  630. REQUIRE( fabs(0.21000000 - OrderLots()) < 1e-9 );
  631. REQUIRE( fabs(55141.31940000 - AccountBalance()) < 1e-9 );
  632. REQUIRE( fabs(56991.17490000 - AccountEquity()) < 1e-9 );
  633. REQUIRE( fabs(52636.72299219 - AccountFreeMargin()) < 1e-9 );
  634. REQUIRE( fabs(1849.85550000 - AccountProfit()) < 1e-9 );
  635. ticket = OrderClose(37,0.14000000,1.23489000,3);
  636. REQUIRE( fabs(55087.78900000 - AccountBalance()) < 1e-9 );
  637. REQUIRE( fabs(56991.17490000 - AccountEquity()) < 1e-9 );
  638. REQUIRE( fabs(52661.22989609 - AccountFreeMargin()) < 1e-9 );
  639. REQUIRE( fabs(1903.38590000 - AccountProfit()) < 1e-9 );
  640. Ask = 1.22643000
  641. Bid = 1.22625000
  642. ticket = OrderSend(Symbol(),1,0.43800000,1.22625000,3,0,0);
  643. REQUIRE( 43 == OrderTicket() );
  644. REQUIRE( 1 == OrderType() );
  645. REQUIRE( fabs(-7.74000000 - OrderProfit()) < 1e-9 );
  646. REQUIRE( fabs(1.22625000 - OrderOpenPrice()) < 1e-9 );
  647. REQUIRE( fabs(0.43000000 - OrderLots()) < 1e-9 );
  648. REQUIRE( fabs(55087.78900000 - AccountBalance()) < 1e-9 );
  649. REQUIRE( fabs(56879.54760000 - AccountEquity()) < 1e-9 );
  650. REQUIRE( fabs(52168.81328922 - AccountFreeMargin()) < 1e-9 );
  651. REQUIRE( fabs(1791.75860000 - AccountProfit()) < 1e-9 );
  652. Ask = 1.23361000
  653. Bid = 1.23343000
  654. ticket = OrderSend(Symbol(),1,0.40700000,1.23343000,3,0,0);
  655. REQUIRE( 44 == OrderTicket() );
  656. REQUIRE( 1 == OrderType() );
  657. REQUIRE( fabs(-7.20000000 - OrderProfit()) < 1e-9 );
  658. REQUIRE( fabs(1.23343000 - OrderOpenPrice()) < 1e-9 );
  659. REQUIRE( fabs(0.40000000 - OrderLots()) < 1e-9 );
  660. REQUIRE( fabs(55087.78900000 - AccountBalance()) < 1e-9 );
  661. REQUIRE( fabs(56638.50960000 - AccountEquity()) < 1e-9 );
  662. REQUIRE( fabs(51434.42967529 - AccountFreeMargin()) < 1e-9 );
  663. REQUIRE( fabs(1550.72060000 - AccountProfit()) < 1e-9 );
  664. ticket = OrderClose(38,0.12000000,1.23343000,3);
  665. REQUIRE( fabs(55133.66380000 - AccountBalance()) < 1e-9 );
  666. REQUIRE( fabs(56638.50960000 - AccountEquity()) < 1e-9 );
  667. REQUIRE( fabs(51434.18783469 - AccountFreeMargin()) < 1e-9 );
  668. REQUIRE( fabs(1504.84580000 - AccountProfit()) < 1e-9 );
  669. Ask = 1.24377000
  670. Bid = 1.24359000
  671. ticket = OrderSend(Symbol(),1,0.38400000,1.24359000,3,0,0);
  672. REQUIRE( 45 == OrderTicket() );
  673. REQUIRE( 1 == OrderType() );
  674. REQUIRE( fabs(-6.84000000 - OrderProfit()) < 1e-9 );
  675. REQUIRE( fabs(1.24359000 - OrderOpenPrice()) < 1e-9 );
  676. REQUIRE( fabs(0.38000000 - OrderLots()) < 1e-9 );
  677. REQUIRE( fabs(55133.66380000 - AccountBalance()) < 1e-9 );
  678. REQUIRE( fabs(55785.11950000 - AccountEquity()) < 1e-9 );
  679. REQUIRE( fabs(50109.88066896 - AccountFreeMargin()) < 1e-9 );
  680. REQUIRE( fabs(651.45570000 - AccountProfit()) < 1e-9 );
  681. Ask = 1.24076000
  682. Bid = 1.24058000
  683. ticket = OrderSend(Symbol(),0,0.44700000,1.24076000,3,0,0);
  684. REQUIRE( 46 == OrderTicket() );
  685. REQUIRE( 0 == OrderType() );
  686. REQUIRE( fabs(-7.92000000 - OrderProfit()) < 1e-9 );
  687. REQUIRE( fabs(1.24076000 - OrderOpenPrice()) < 1e-9 );
  688. REQUIRE( fabs(0.44000000 - OrderLots()) < 1e-9 );
  689. REQUIRE( fabs(55133.66380000 - AccountBalance()) < 1e-9 );
  690. REQUIRE( fabs(56134.07890000 - AccountEquity()) < 1e-9 );
  691. REQUIRE( fabs(50457.17802930 - AccountFreeMargin()) < 1e-9 );
  692. REQUIRE( fabs(1000.41510000 - AccountProfit()) < 1e-9 );
  693. ticket = OrderClose(35,0.23000000,1.24058000,3);
  694. REQUIRE( fabs(55282.99360000 - AccountBalance()) < 1e-9 );
  695. REQUIRE( fabs(56134.07890000 - AccountEquity()) < 1e-9 );
  696. REQUIRE( fabs(50457.17301220 - AccountFreeMargin()) < 1e-9 );
  697. REQUIRE( fabs(851.08530000 - AccountProfit()) < 1e-9 );
  698. Ask = 1.23084000
  699. Bid = 1.23066000
  700. ticket = OrderSend(Symbol(),0,0.43300000,1.23084000,3,0,0);
  701. REQUIRE( 47 == OrderTicket() );
  702. REQUIRE( 0 == OrderType() );
  703. REQUIRE( fabs(-7.74000000 - OrderProfit()) < 1e-9 );
  704. REQUIRE( fabs(1.23084000 - OrderOpenPrice()) < 1e-9 );
  705. REQUIRE( fabs(0.43000000 - OrderLots()) < 1e-9 );
  706. REQUIRE( fabs(55282.99360000 - AccountBalance()) < 1e-9 );
  707. REQUIRE( fabs(57107.55090000 - AccountEquity()) < 1e-9 );
  708. REQUIRE( fabs(51431.41512016 - AccountFreeMargin()) < 1e-9 );
  709. REQUIRE( fabs(1824.55730000 - AccountProfit()) < 1e-9 );
  710. Ask = 1.23184000
  711. Bid = 1.23166000
  712. ticket = OrderSend(Symbol(),1,0.83500000,1.23166000,3,0,0);
  713. REQUIRE( 48 == OrderTicket() );
  714. REQUIRE( 1 == OrderType() );
  715. REQUIRE( fabs(-14.94000000 - OrderProfit()) < 1e-9 );
  716. REQUIRE( fabs(1.23166000 - OrderOpenPrice()) < 1e-9 );
  717. REQUIRE( fabs(0.83000000 - OrderLots()) < 1e-9 );
  718. REQUIRE( fabs(55282.99360000 - AccountBalance()) < 1e-9 );
  719. REQUIRE( fabs(57028.70270000 - AccountEquity()) < 1e-9 );
  720. REQUIRE( fabs(50329.43916681 - AccountFreeMargin()) < 1e-9 );
  721. REQUIRE( fabs(1745.70910000 - AccountProfit()) < 1e-9 );
  722. ticket = OrderClose(28,0.91000000,1.23166000,3);
  723. REQUIRE( fabs(55281.35560000 - AccountBalance()) < 1e-9 );
  724. REQUIRE( fabs(57028.70270000 - AccountEquity()) < 1e-9 );
  725. REQUIRE( fabs(50328.26585930 - AccountFreeMargin()) < 1e-9 );
  726. REQUIRE( fabs(1747.34710000 - AccountProfit()) < 1e-9 );
  727. Ask = 1.22642000
  728. Bid = 1.22624000
  729. ticket = OrderSend(Symbol(),0,0.45000000,1.22642000,3,0,0);
  730. REQUIRE( 49 == OrderTicket() );
  731. REQUIRE( 0 == OrderType() );
  732. REQUIRE( fabs(-8.10000000 - OrderProfit()) < 1e-9 );
  733. REQUIRE( fabs(1.22642000 - OrderOpenPrice()) < 1e-9 );
  734. REQUIRE( fabs(0.45000000 - OrderLots()) < 1e-9 );
  735. REQUIRE( fabs(55281.35560000 - AccountBalance()) < 1e-9 );
  736. REQUIRE( fabs(58268.00510000 - AccountEquity()) < 1e-9 );
  737. REQUIRE( fabs(51569.64150633 - AccountFreeMargin()) < 1e-9 );
  738. REQUIRE( fabs(2986.64950000 - AccountProfit()) < 1e-9 );
  739. Ask = 1.22327000
  740. Bid = 1.22309000
  741. ticket = OrderSend(Symbol(),0,0.24800000,1.22327000,3,0,0);
  742. REQUIRE( 50 == OrderTicket() );
  743. REQUIRE( 0 == OrderType() );
  744. REQUIRE( fabs(-4.32000000 - OrderProfit()) < 1e-9 );
  745. REQUIRE( fabs(1.22327000 - OrderOpenPrice()) < 1e-9 );
  746. REQUIRE( fabs(0.24000000 - OrderLots()) < 1e-9 );
  747. REQUIRE( fabs(55281.35560000 - AccountBalance()) < 1e-9 );
  748. REQUIRE( fabs(58831.70870000 - AccountEquity()) < 1e-9 );
  749. REQUIRE( fabs(52134.81253994 - AccountFreeMargin()) < 1e-9 );
  750. REQUIRE( fabs(3550.35310000 - AccountProfit()) < 1e-9 );
  751. ticket = OrderClose(47,0.43000000,1.22309000,3);
  752. REQUIRE( fabs(54949.09890000 - AccountBalance()) < 1e-9 );
  753. REQUIRE( fabs(58831.70870000 - AccountEquity()) < 1e-9 );
  754. REQUIRE( fabs(52134.13295153 - AccountFreeMargin()) < 1e-9 );
  755. REQUIRE( fabs(3882.60980000 - AccountProfit()) < 1e-9 );
  756. Ask = 1.23108000
  757. Bid = 1.23090000
  758. ticket = OrderSend(Symbol(),1,0.22200000,1.23090000,3,0,0);
  759. REQUIRE( 51 == OrderTicket() );
  760. REQUIRE( 1 == OrderType() );
  761. REQUIRE( fabs(-3.96000000 - OrderProfit()) < 1e-9 );
  762. REQUIRE( fabs(1.23090000 - OrderOpenPrice()) < 1e-9 );
  763. REQUIRE( fabs(0.22000000 - OrderLots()) < 1e-9 );
  764. REQUIRE( fabs(54949.09890000 - AccountBalance()) < 1e-9 );
  765. REQUIRE( fabs(57217.63510000 - AccountEquity()) < 1e-9 );
  766. REQUIRE( fabs(50249.03985194 - AccountFreeMargin()) < 1e-9 );
  767. REQUIRE( fabs(2268.53620000 - AccountProfit()) < 1e-9 );
  768. ticket = OrderClose(46,0.44000000,1.23090000,3);
  769. REQUIRE( fabs(54517.00130000 - AccountBalance()) < 1e-9 );
  770. REQUIRE( fabs(57217.63510000 - AccountEquity()) < 1e-9 );
  771. REQUIRE( fabs(50251.14971350 - AccountFreeMargin()) < 1e-9 );
  772. REQUIRE( fabs(2700.63380000 - AccountProfit()) < 1e-9 );
  773. Ask = 1.23633000
  774. Bid = 1.23615000
  775. ticket = OrderSend(Symbol(),1,0.84500000,1.23615000,3,0,0);
  776. REQUIRE( 52 == OrderTicket() );
  777. REQUIRE( 1 == OrderType() );
  778. REQUIRE( fabs(-15.12000000 - OrderProfit()) < 1e-9 );
  779. REQUIRE( fabs(1.23615000 - OrderOpenPrice()) < 1e-9 );
  780. REQUIRE( fabs(0.84000000 - OrderLots()) < 1e-9 );
  781. REQUIRE( fabs(54517.00130000 - AccountBalance()) < 1e-9 );
  782. REQUIRE( fabs(55769.95350000 - AccountEquity()) < 1e-9 );
  783. REQUIRE( fabs(47765.87338908 - AccountFreeMargin()) < 1e-9 );
  784. REQUIRE( fabs(1252.95220000 - AccountProfit()) < 1e-9 );
  785. ticket = OrderClose(27,0.41000000,1.23615000,3);
  786. REQUIRE( fabs(54638.97630000 - AccountBalance()) < 1e-9 );
  787. REQUIRE( fabs(55769.95350000 - AccountEquity()) < 1e-9 );
  788. REQUIRE( fabs(47765.86031585 - AccountFreeMargin()) < 1e-9 );
  789. REQUIRE( fabs(1130.97720000 - AccountProfit()) < 1e-9 );
  790. Ask = 1.23185000
  791. Bid = 1.23167000
  792. ticket = OrderSend(Symbol(),1,0.69600000,1.23167000,3,0,0);
  793. REQUIRE( 53 == OrderTicket() );
  794. REQUIRE( 1 == OrderType() );
  795. REQUIRE( fabs(-12.42000000 - OrderProfit()) < 1e-9 );
  796. REQUIRE( fabs(1.23167000 - OrderOpenPrice()) < 1e-9 );
  797. REQUIRE( fabs(0.69000000 - OrderLots()) < 1e-9 );
  798. REQUIRE( fabs(54638.97630000 - AccountBalance()) < 1e-9 );
  799. REQUIRE( fabs(57513.86940000 - AccountEquity()) < 1e-9 );
  800. REQUIRE( fabs(48659.58560865 - AccountFreeMargin()) < 1e-9 );
  801. REQUIRE( fabs(2874.89310000 - AccountProfit()) < 1e-9 );
  802. ticket = OrderClose(31,0.79000000,1.23167000,3);
  803. REQUIRE( fabs(54451.09850000 - AccountBalance()) < 1e-9 );
  804. REQUIRE( fabs(57513.86940000 - AccountEquity()) < 1e-9 );
  805. REQUIRE( fabs(48660.17244126 - AccountFreeMargin()) < 1e-9 );
  806. REQUIRE( fabs(3062.77090000 - AccountProfit()) < 1e-9 );
  807. Ask = 1.23368000
  808. Bid = 1.23350000
  809. ticket = OrderSend(Symbol(),1,0.91700000,1.23350000,3,0,0);
  810. REQUIRE( 54 == OrderTicket() );
  811. REQUIRE( 1 == OrderType() );
  812. REQUIRE( fabs(-16.38000000 - OrderProfit()) < 1e-9 );
  813. REQUIRE( fabs(1.23350000 - OrderOpenPrice()) < 1e-9 );
  814. REQUIRE( fabs(0.91000000 - OrderLots()) < 1e-9 );
  815. REQUIRE( fabs(54451.09850000 - AccountBalance()) < 1e-9 );
  816. REQUIRE( fabs(56488.18340000 - AccountEquity()) < 1e-9 );
  817. REQUIRE( fabs(46511.99759563 - AccountFreeMargin()) < 1e-9 );
  818. REQUIRE( fabs(2037.08490000 - AccountProfit()) < 1e-9 );
  819. ticket = OrderClose(44,0.40000000,1.23368000,3);
  820. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  821. REQUIRE( fabs(56488.18340000 - AccountEquity()) < 1e-9 );
  822. REQUIRE( fabs(47005.37830806 - AccountFreeMargin()) < 1e-9 );
  823. REQUIRE( fabs(2056.23690000 - AccountProfit()) < 1e-9 );
  824. Ask = 1.23483000
  825. Bid = 1.23465000
  826. ticket = OrderSend(Symbol(),1,0.41100000,1.23465000,3,0,0);
  827. REQUIRE( 55 == OrderTicket() );
  828. REQUIRE( 1 == OrderType() );
  829. REQUIRE( fabs(-7.38000000 - OrderProfit()) < 1e-9 );
  830. REQUIRE( fabs(1.23465000 - OrderOpenPrice()) < 1e-9 );
  831. REQUIRE( fabs(0.41000000 - OrderLots()) < 1e-9 );
  832. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  833. REQUIRE( fabs(55789.13000000 - AccountEquity()) < 1e-9 );
  834. REQUIRE( fabs(45800.19789939 - AccountFreeMargin()) < 1e-9 );
  835. REQUIRE( fabs(1357.18350000 - AccountProfit()) < 1e-9 );
  836. Ask = 1.23667000
  837. Bid = 1.23649000
  838. ticket = OrderSend(Symbol(),0,0.68600000,1.23667000,3,0,0);
  839. REQUIRE( 56 == OrderTicket() );
  840. REQUIRE( 0 == OrderType() );
  841. REQUIRE( fabs(-12.24000000 - OrderProfit()) < 1e-9 );
  842. REQUIRE( fabs(1.23667000 - OrderOpenPrice()) < 1e-9 );
  843. REQUIRE( fabs(0.68000000 - OrderLots()) < 1e-9 );
  844. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  845. REQUIRE( fabs(54575.25080000 - AccountEquity()) < 1e-9 );
  846. REQUIRE( fabs(44584.54980095 - AccountFreeMargin()) < 1e-9 );
  847. REQUIRE( fabs(143.30430000 - AccountProfit()) < 1e-9 );
  848. Ask = 1.23072000
  849. Bid = 1.23054000
  850. ticket = OrderSend(Symbol(),1,0.24400000,1.23054000,3,0,0);
  851. REQUIRE( 57 == OrderTicket() );
  852. REQUIRE( 1 == OrderType() );
  853. REQUIRE( fabs(-4.32000000 - OrderProfit()) < 1e-9 );
  854. REQUIRE( fabs(1.23054000 - OrderOpenPrice()) < 1e-9 );
  855. REQUIRE( fabs(0.24000000 - OrderLots()) < 1e-9 );
  856. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  857. REQUIRE( fabs(57942.90540000 - AccountEquity()) < 1e-9 );
  858. REQUIRE( fabs(47656.70260985 - AccountFreeMargin()) < 1e-9 );
  859. REQUIRE( fabs(3510.95890000 - AccountProfit()) < 1e-9 );
  860. Ask = 1.22094000
  861. Bid = 1.22076000
  862. ticket = OrderSend(Symbol(),1,0.90700000,1.22076000,3,0,0);
  863. REQUIRE( 58 == OrderTicket() );
  864. REQUIRE( 1 == OrderType() );
  865. REQUIRE( fabs(-16.20000000 - OrderProfit()) < 1e-9 );
  866. REQUIRE( fabs(1.22076000 - OrderOpenPrice()) < 1e-9 );
  867. REQUIRE( fabs(0.90000000 - OrderLots()) < 1e-9 );
  868. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  869. REQUIRE( fabs(63700.71540000 - AccountEquity()) < 1e-9 );
  870. REQUIRE( fabs(52313.41127547 - AccountFreeMargin()) < 1e-9 );
  871. REQUIRE( fabs(9268.76890000 - AccountProfit()) < 1e-9 );
  872. Ask = 1.21861000
  873. Bid = 1.21843000
  874. ticket = OrderSend(Symbol(),1,0.99800000,1.21843000,3,0,0);
  875. REQUIRE( 59 == OrderTicket() );
  876. REQUIRE( 1 == OrderType() );
  877. REQUIRE( fabs(-17.82000000 - OrderProfit()) < 1e-9 );
  878. REQUIRE( fabs(1.21843000 - OrderOpenPrice()) < 1e-9 );
  879. REQUIRE( fabs(0.99000000 - OrderLots()) < 1e-9 );
  880. REQUIRE( fabs(54431.94650000 - AccountBalance()) < 1e-9 );
  881. REQUIRE( fabs(65263.14440000 - AccountEquity()) < 1e-9 );
  882. REQUIRE( fabs(52666.87819739 - AccountFreeMargin()) < 1e-9 );
  883. REQUIRE( fabs(10831.19790000 - AccountProfit()) < 1e-9 );
  884. ticket = OrderClose(53,0.69000000,1.21861000,3);
  885. REQUIRE( fabs(55325.19290000 - AccountBalance()) < 1e-9 );
  886. REQUIRE( fabs(65263.14440000 - AccountEquity()) < 1e-9 );
  887. REQUIRE( fabs(53516.72929147 - AccountFreeMargin()) < 1e-9 );
  888. REQUIRE( fabs(9937.95150000 - AccountProfit()) < 1e-9 );
  889. Ask = 1.21070000
  890. Bid = 1.21052000
  891. ticket = OrderSend(Symbol(),1,0.39000000,1.21052000,3,0,0);
  892. REQUIRE( 60 == OrderTicket() );
  893. REQUIRE( 1 == OrderType() );
  894. REQUIRE( fabs(-7.02000000 - OrderProfit()) < 1e-9 );
  895. REQUIRE( fabs(1.21052000 - OrderOpenPrice()) < 1e-9 );
  896. REQUIRE( fabs(0.39000000 - OrderLots()) < 1e-9 );
  897. REQUIRE( fabs(55325.19290000 - AccountBalance()) < 1e-9 );
  898. REQUIRE( fabs(70851.55240000 - AccountEquity()) < 1e-9 );
  899. REQUIRE( fabs(58631.41973700 - AccountFreeMargin()) < 1e-9 );
  900. REQUIRE( fabs(15526.35950000 - AccountProfit()) < 1e-9 );
  901. ticket = OrderClose(39,0.76000000,1.21070000,3);
  902. REQUIRE( fabs(57454.07450000 - AccountBalance()) < 1e-9 );
  903. REQUIRE( fabs(70851.55240000 - AccountEquity()) < 1e-9 );
  904. REQUIRE( fabs(59571.89950992 - AccountFreeMargin()) < 1e-9 );
  905. REQUIRE( fabs(13397.47790000 - AccountProfit()) < 1e-9 );
  906. Ask = 1.21029000
  907. Bid = 1.21011000
  908. ticket = OrderSend(Symbol(),0,0.17500000,1.21029000,3,0,0);
  909. REQUIRE( 61 == OrderTicket() );
  910. REQUIRE( 0 == OrderType() );
  911. REQUIRE( fabs(-3.06000000 - OrderProfit()) < 1e-9 );
  912. REQUIRE( fabs(1.21029000 - OrderOpenPrice()) < 1e-9 );
  913. REQUIRE( fabs(0.17000000 - OrderLots()) < 1e-9 );
  914. REQUIRE( fabs(57454.07450000 - AccountBalance()) < 1e-9 );
  915. REQUIRE( fabs(71116.50420000 - AccountEquity()) < 1e-9 );
  916. REQUIRE( fabs(59839.48398095 - AccountFreeMargin()) < 1e-9 );
  917. REQUIRE( fabs(13662.42970000 - AccountProfit()) < 1e-9 );
  918. ticket = OrderClose(21,0.37000000,1.21011000,3);
  919. REQUIRE( fabs(56880.47830000 - AccountBalance()) < 1e-9 );
  920. REQUIRE( fabs(71116.50420000 - AccountEquity()) < 1e-9 );
  921. REQUIRE( fabs(59838.29447094 - AccountFreeMargin()) < 1e-9 );
  922. REQUIRE( fabs(14236.02590000 - AccountProfit()) < 1e-9 );
  923. Ask = 1.19981000
  924. Bid = 1.19963000
  925. ticket = OrderSend(Symbol(),0,0.14800000,1.19981000,3,0,0);
  926. REQUIRE( 62 == OrderTicket() );
  927. REQUIRE( 0 == OrderType() );
  928. REQUIRE( fabs(-2.52000000 - OrderProfit()) < 1e-9 );
  929. REQUIRE( fabs(1.19981000 - OrderOpenPrice()) < 1e-9 );
  930. REQUIRE( fabs(0.14000000 - OrderLots()) < 1e-9 );
  931. REQUIRE( fabs(56880.47830000 - AccountBalance()) < 1e-9 );
  932. REQUIRE( fabs(78388.78000000 - AccountEquity()) < 1e-9 );
  933. REQUIRE( fabs(67113.93096704 - AccountFreeMargin()) < 1e-9 );
  934. REQUIRE( fabs(21508.30170000 - AccountProfit()) < 1e-9 );
  935. Ask = 1.19944000
  936. Bid = 1.19926000
  937. ticket = OrderSend(Symbol(),0,0.22800000,1.19944000,3,0,0);
  938. REQUIRE( 63 == OrderTicket() );
  939. REQUIRE( 0 == OrderType() );
  940. REQUIRE( fabs(-3.96000000 - OrderProfit()) < 1e-9 );
  941. REQUIRE( fabs(1.19944000 - OrderOpenPrice()) < 1e-9 );
  942. REQUIRE( fabs(0.22000000 - OrderLots()) < 1e-9 );
  943. REQUIRE( fabs(56880.47830000 - AccountBalance()) < 1e-9 );
  944. REQUIRE( fabs(78601.75800000 - AccountEquity()) < 1e-9 );
  945. REQUIRE( fabs(67332.09178383 - AccountFreeMargin()) < 1e-9 );
  946. REQUIRE( fabs(21721.27970000 - AccountProfit()) < 1e-9 );
  947. ticket = OrderClose(57,0.24000000,1.19944000,3);
  948. REQUIRE( fabs(57623.63350000 - AccountBalance()) < 1e-9 );
  949. REQUIRE( fabs(78601.75800000 - AccountEquity()) < 1e-9 );
  950. REQUIRE( fabs(67627.35374770 - AccountFreeMargin()) < 1e-9 );
  951. REQUIRE( fabs(20978.12450000 - AccountProfit()) < 1e-9 );
  952. Ask = 1.19478000
  953. Bid = 1.19460000
  954. ticket = OrderSend(Symbol(),0,0.56800000,1.19478000,3,0,0);
  955. REQUIRE( 64 == OrderTicket() );
  956. REQUIRE( 0 == OrderType() );
  957. REQUIRE( fabs(-10.08000000 - OrderProfit()) < 1e-9 );
  958. REQUIRE( fabs(1.19478000 - OrderOpenPrice()) < 1e-9 );
  959. REQUIRE( fabs(0.56000000 - OrderLots()) < 1e-9 );
  960. REQUIRE( fabs(57623.63350000 - AccountBalance()) < 1e-9 );
  961. REQUIRE( fabs(81542.34220000 - AccountEquity()) < 1e-9 );
  962. REQUIRE( fabs(70582.12689793 - AccountFreeMargin()) < 1e-9 );
  963. REQUIRE( fabs(23918.70870000 - AccountProfit()) < 1e-9 );
  964. Ask = 1.19297000
  965. Bid = 1.19279000
  966. ticket = OrderSend(Symbol(),0,0.81600000,1.19297000,3,0,0);
  967. REQUIRE( 65 == OrderTicket() );
  968. REQUIRE( 0 == OrderType() );
  969. REQUIRE( fabs(-14.58000000 - OrderProfit()) < 1e-9 );
  970. REQUIRE( fabs(1.19297000 - OrderOpenPrice()) < 1e-9 );
  971. REQUIRE( fabs(0.81000000 - OrderLots()) < 1e-9 );
  972. REQUIRE( fabs(57623.63350000 - AccountBalance()) < 1e-9 );
  973. REQUIRE( fabs(82559.25020000 - AccountEquity()) < 1e-9 );
  974. REQUIRE( fabs(71618.39169068 - AccountFreeMargin()) < 1e-9 );
  975. REQUIRE( fabs(24935.61670000 - AccountProfit()) < 1e-9 );
  976. ticket = OrderClose(63,0.22000000,1.19279000,3);
  977. REQUIRE( fabs(57477.55130000 - AccountBalance()) < 1e-9 );
  978. REQUIRE( fabs(82559.25020000 - AccountEquity()) < 1e-9 );
  979. REQUIRE( fabs(71614.38332875 - AccountFreeMargin()) < 1e-9 );
  980. REQUIRE( fabs(25081.69890000 - AccountProfit()) < 1e-9 );
  981. Ask = 1.18531000
  982. Bid = 1.18513000
  983. ticket = OrderSend(Symbol(),1,0.58300000,1.18513000,3,0,0);
  984. REQUIRE( 66 == OrderTicket() );
  985. REQUIRE( 1 == OrderType() );
  986. REQUIRE( fabs(-10.44000000 - OrderProfit()) < 1e-9 );
  987. REQUIRE( fabs(1.18513000 - OrderOpenPrice()) < 1e-9 );
  988. REQUIRE( fabs(0.58000000 - OrderLots()) < 1e-9 );
  989. REQUIRE( fabs(57477.55130000 - AccountBalance()) < 1e-9 );
  990. REQUIRE( fabs(86523.95390000 - AccountEquity()) < 1e-9 );
  991. REQUIRE( fabs(74885.05664879 - AccountFreeMargin()) < 1e-9 );
  992. REQUIRE( fabs(29046.40260000 - AccountProfit()) < 1e-9 );
  993. Ask = 1.19197000
  994. Bid = 1.19179000
  995. ticket = OrderSend(Symbol(),1,0.37000000,1.19179000,3,0,0);
  996. REQUIRE( 67 == OrderTicket() );
  997. REQUIRE( 1 == OrderType() );
  998. REQUIRE( fabs(-6.66000000 - OrderProfit()) < 1e-9 );
  999. REQUIRE( fabs(1.19179000 - OrderOpenPrice()) < 1e-9 );
  1000. REQUIRE( fabs(0.37000000 - OrderLots()) < 1e-9 );
  1001. REQUIRE( fabs(57477.55130000 - AccountBalance()) < 1e-9 );
  1002. REQUIRE( fabs(82641.83540000 - AccountEquity()) < 1e-9 );
  1003. REQUIRE( fabs(70558.69978971 - AccountFreeMargin()) < 1e-9 );
  1004. REQUIRE( fabs(25164.28410000 - AccountProfit()) < 1e-9 );
  1005. ticket = OrderClose(50,0.24000000,1.19179000,3);
  1006. REQUIRE( fabs(56724.80330000 - AccountBalance()) < 1e-9 );
  1007. REQUIRE( fabs(82641.83540000 - AccountEquity()) < 1e-9 );
  1008. REQUIRE( fabs(70558.73358699 - AccountFreeMargin()) < 1e-9 );
  1009. REQUIRE( fabs(25917.03210000 - AccountProfit()) < 1e-9 );
  1010. Ask = 1.19684000
  1011. Bid = 1.19666000
  1012. ticket = OrderSend(Symbol(),1,0.58100000,1.19666000,3,0,0);
  1013. REQUIRE( 68 == OrderTicket() );
  1014. REQUIRE( 1 == OrderType() );
  1015. REQUIRE( fabs(-10.44000000 - OrderProfit()) < 1e-9 );
  1016. REQUIRE( fabs(1.19666000 - OrderOpenPrice()) < 1e-9 );
  1017. REQUIRE( fabs(0.58000000 - OrderLots()) < 1e-9 );
  1018. REQUIRE( fabs(56724.80330000 - AccountBalance()) < 1e-9 );
  1019. REQUIRE( fabs(79501.21840000 - AccountEquity()) < 1e-9 );
  1020. REQUIRE( fabs(66720.19463799 - AccountFreeMargin()) < 1e-9 );
  1021. REQUIRE( fabs(22776.41510000 - AccountProfit()) < 1e-9 );
  1022. Ask = 1.18896000
  1023. Bid = 1.18878000
  1024. ticket = OrderSend(Symbol(),0,0.81200000,1.18896000,3,0,0);
  1025. REQUIRE( 69 == OrderTicket() );
  1026. REQUIRE( 0 == OrderType() );
  1027. REQUIRE( fabs(-14.58000000 - OrderProfit()) < 1e-9 );
  1028. REQUIRE( fabs(1.18896000 - OrderOpenPrice()) < 1e-9 );
  1029. REQUIRE( fabs(0.81000000 - OrderLots()) < 1e-9 );
  1030. REQUIRE( fabs(56724.80330000 - AccountBalance()) < 1e-9 );
  1031. REQUIRE( fabs(84969.27170000 - AccountEquity()) < 1e-9 );
  1032. REQUIRE( fabs(72207.20520664 - AccountFreeMargin()) < 1e-9 );
  1033. REQUIRE( fabs(28244.46840000 - AccountProfit()) < 1e-9 );
  1034. Ask = 1.17831000
  1035. Bid = 1.17813000
  1036. ticket = OrderSend(Symbol(),1,0.46100000,1.17813000,3,0,0);
  1037. REQUIRE( 70 == OrderTicket() );
  1038. REQUIRE( 1 == OrderType() );
  1039. REQUIRE( fabs(-8.28000000 - OrderProfit()) < 1e-9 );
  1040. REQUIRE( fabs(1.17813000 - OrderOpenPrice()) < 1e-9 );
  1041. REQUIRE( fabs(0.46000000 - OrderLots()) < 1e-9 );
  1042. REQUIRE( fabs(56724.80330000 - AccountBalance()) < 1e-9 );
  1043. REQUIRE( fabs(91511.93230000 - AccountEquity()) < 1e-9 );
  1044. REQUIRE( fabs(78202.44408791 - AccountFreeMargin()) < 1e-9 );
  1045. REQUIRE( fabs(34787.12900000 - AccountProfit()) < 1e-9 );
  1046. Ask = 1.17960000
  1047. Bid = 1.17942000
  1048. ticket = OrderSend(Symbol(),0,0.27300000,1.17960000,3,0,0);
  1049. REQUIRE( 71 == OrderTicket() );
  1050. REQUIRE( 0 == OrderType() );
  1051. REQUIRE( fabs(-4.86000000 - OrderProfit()) < 1e-9 );
  1052. REQUIRE( fabs(1.17960000 - OrderOpenPrice()) < 1e-9 );
  1053. REQUIRE( fabs(0.27000000 - OrderLots()) < 1e-9 );
  1054. REQUIRE( fabs(56724.80330000 - AccountBalance()) < 1e-9 );
  1055. REQUIRE( fabs(90623.27890000 - AccountEquity()) < 1e-9 );
  1056. REQUIRE( fabs(77321.27258160 - AccountFreeMargin()) < 1e-9 );
  1057. REQUIRE( fabs(33898.47560000 - AccountProfit()) < 1e-9 );
  1058. ticket = OrderClose(48,0.83000000,1.17960000,3);
  1059. REQUIRE( fabs(61005.21290000 - AccountBalance()) < 1e-9 );
  1060. REQUIRE( fabs(90623.27890000 - AccountEquity()) < 1e-9 );
  1061. REQUIRE( fabs(78340.10170225 - AccountFreeMargin()) < 1e-9 );
  1062. REQUIRE( fabs(29618.06600000 - AccountProfit()) < 1e-9 );
  1063. Ask = 1.17472000
  1064. Bid = 1.17454000
  1065. ticket = OrderSend(Symbol(),1,0.04400000,1.17454000,3,0,0);
  1066. REQUIRE( 72 == OrderTicket() );
  1067. REQUIRE( 1 == OrderType() );
  1068. REQUIRE( fabs(-0.72000000 - OrderProfit()) < 1e-9 );
  1069. REQUIRE( fabs(1.17454000 - OrderOpenPrice()) < 1e-9 );
  1070. REQUIRE( fabs(0.04000000 - OrderLots()) < 1e-9 );
  1071. REQUIRE( fabs(61005.21290000 - AccountBalance()) < 1e-9 );
  1072. REQUIRE( fabs(93298.34790000 - AccountEquity()) < 1e-9 );
  1073. REQUIRE( fabs(80967.65412048 - AccountFreeMargin()) < 1e-9 );
  1074. REQUIRE( fabs(32293.13500000 - AccountProfit()) < 1e-9 );
  1075. Ask = 1.18145000
  1076. Bid = 1.18127000
  1077. ticket = OrderSend(Symbol(),0,0.44100000,1.18145000,3,0,0);
  1078. REQUIRE( 73 == OrderTicket() );
  1079. REQUIRE( 0 == OrderType() );
  1080. REQUIRE( fabs(-7.92000000 - OrderProfit()) < 1e-9 );
  1081. REQUIRE( fabs(1.18145000 - OrderOpenPrice()) < 1e-9 );
  1082. REQUIRE( fabs(0.44000000 - OrderLots()) < 1e-9 );
  1083. REQUIRE( fabs(61005.21290000 - AccountBalance()) < 1e-9 );
  1084. REQUIRE( fabs(89539.52080000 - AccountEquity()) < 1e-9 );
  1085. REQUIRE( fabs(77219.39158263 - AccountFreeMargin()) < 1e-9 );
  1086. REQUIRE( fabs(28534.30790000 - AccountProfit()) < 1e-9 );
  1087. ticket = OrderClose(51,0.22000000,1.18145000,3);
  1088. REQUIRE( fabs(62083.27450000 - AccountBalance()) < 1e-9 );
  1089. REQUIRE( fabs(89539.52080000 - AccountEquity()) < 1e-9 );
  1090. REQUIRE( fabs(77489.11695556 - AccountFreeMargin()) < 1e-9 );
  1091. REQUIRE( fabs(27456.24630000 - AccountProfit()) < 1e-9 );
  1092. Ask = 1.17074000
  1093. Bid = 1.17056000
  1094. ticket = OrderSend(Symbol(),1,0.22300000,1.17056000,3,0,0);
  1095. REQUIRE( 74 == OrderTicket() );
  1096. REQUIRE( 1 == OrderType() );
  1097. REQUIRE( fabs(-3.96000000 - OrderProfit()) < 1e-9 );
  1098. REQUIRE( fabs(1.17056000 - OrderOpenPrice()) < 1e-9 );
  1099. REQUIRE( fabs(0.22000000 - OrderLots()) < 1e-9 );
  1100. REQUIRE( fabs(62083.27450000 - AccountBalance()) < 1e-9 );
  1101. REQUIRE( fabs(94774.80770000 - AccountEquity()) < 1e-9 );
  1102. REQUIRE( fabs(82463.56049875 - AccountFreeMargin()) < 1e-9 );
  1103. REQUIRE( fabs(32691.53320000 - AccountProfit()) < 1e-9 );
  1104. Ask = 1.17304000
  1105. Bid = 1.17286000
  1106. ticket = OrderSend(Symbol(),1,0.70200000,1.17286000,3,0,0);
  1107. REQUIRE( 75 == OrderTicket() );
  1108. REQUIRE( 1 == OrderType() );
  1109. REQUIRE( fabs(-12.60000000 - OrderProfit()) < 1e-9 );
  1110. REQUIRE( fabs(1.17286000 - OrderOpenPrice()) < 1e-9 );
  1111. REQUIRE( fabs(0.70000000 - OrderLots()) < 1e-9 );
  1112. REQUIRE( fabs(62083.27450000 - AccountBalance()) < 1e-9 );
  1113. REQUIRE( fabs(93557.96200000 - AccountEquity()) < 1e-9 );
  1114. REQUIRE( fabs(80416.26780133 - AccountFreeMargin()) < 1e-9 );
  1115. REQUIRE( fabs(31474.68750000 - AccountProfit()) < 1e-9 );
  1116. 1e-9 );
  1117. ) );
  1118. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1119. REQUIRE( fabs(56814.97810000 - AccountEquity()) < 1e-9 );
  1120. REQUIRE( fabs(46734.06093989 - AccountFreeMargin()) < 1e-9 );
  1121. REQUIRE( fabs(7716.31390000 - AccountProfit()) < 1e-9 );
  1122. ticket = OrderSend(Symbol(),0,0.23800000,1.19298000,3,0,0);
  1123. REQUIRE( 65 == OrderTicket() );
  1124. REQUIRE( 0 == OrderType() );
  1125. REQUIRE( fabs(-4.37000000 - OrderProfit()) < 1e-9 );
  1126. REQUIRE( fabs(1.19298000 - OrderOpenPrice()) < 1e-9 );
  1127. REQUIRE( fabs(0.23000000 - OrderLots()) < 1e-9 );
  1128. REQUIRE( 100 == AccountLeverage() );
  1129. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1130. REQUIRE( fabs(57137.98910000 - AccountEquity()) < 1e-9 );
  1131. REQUIRE( fabs(47061.54565416 - AccountFreeMargin()) < 1e-9 );
  1132. REQUIRE( fabs(8039.32490000 - AccountProfit()) < 1e-9 );
  1133. ticket = OrderSend(Symbol(),0,0.49200000,1.18532000,3,0,0);
  1134. REQUIRE( 66 == OrderTicket() );
  1135. REQUIRE( 0 == OrderType() );
  1136. REQUIRE( fabs(-9.31000000 - OrderProfit()) < 1e-9 );
  1137. REQUIRE( fabs(1.18532000 - OrderOpenPrice()) < 1e-9 );
  1138. REQUIRE( fabs(0.49000000 - OrderLots()) < 1e-9 );
  1139. REQUIRE( 100 == AccountLeverage() );
  1140. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1141. REQUIRE( fabs(58386.20550000 - AccountEquity()) < 1e-9 );
  1142. REQUIRE( fabs(48320.86267811 - AccountFreeMargin()) < 1e-9 );
  1143. REQUIRE( fabs(9287.54130000 - AccountProfit()) < 1e-9 );
  1144. ticket = OrderSend(Symbol(),0,0.21600000,1.19198000,3,0,0);
  1145. REQUIRE( 67 == OrderTicket() );
  1146. REQUIRE( 0 == OrderType() );
  1147. REQUIRE( fabs(-3.99000000 - OrderProfit()) < 1e-9 );
  1148. REQUIRE( fabs(1.19198000 - OrderOpenPrice()) < 1e-9 );
  1149. REQUIRE( fabs(0.21000000 - OrderLots()) < 1e-9 );
  1150. REQUIRE( 100 == AccountLeverage() );
  1151. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1152. REQUIRE( fabs(57591.01980000 - AccountEquity()) < 1e-9 );
  1153. REQUIRE( fabs(47529.47687750 - AccountFreeMargin()) < 1e-9 );
  1154. REQUIRE( fabs(8492.35560000 - AccountProfit()) < 1e-9 );
  1155. ticket = OrderSend(Symbol(),0,0.82300000,1.19685000,3,0,0);
  1156. REQUIRE( 68 == OrderTicket() );
  1157. REQUIRE( 0 == OrderType() );
  1158. REQUIRE( fabs(-15.58000000 - OrderProfit()) < 1e-9 );
  1159. REQUIRE( fabs(1.19685000 - OrderOpenPrice()) < 1e-9 );
  1160. REQUIRE( fabs(0.82000000 - OrderLots()) < 1e-9 );
  1161. REQUIRE( 100 == AccountLeverage() );
  1162. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1163. REQUIRE( fabs(57100.50460000 - AccountEquity()) < 1e-9 );
  1164. REQUIRE( fabs(47050.84857281 - AccountFreeMargin()) < 1e-9 );
  1165. REQUIRE( fabs(8001.84040000 - AccountProfit()) < 1e-9 );
  1166. ticket = OrderSend(Symbol(),0,0.45300000,1.18897000,3,0,0);
  1167. REQUIRE( 69 == OrderTicket() );
  1168. REQUIRE( 0 == OrderType() );
  1169. REQUIRE( fabs(-8.55000000 - OrderProfit()) < 1e-9 );
  1170. REQUIRE( fabs(1.18897000 - OrderOpenPrice()) < 1e-9 );
  1171. REQUIRE( fabs(0.45000000 - OrderLots()) < 1e-9 );
  1172. REQUIRE( 100 == AccountLeverage() );
  1173. REQUIRE( fabs(49098.66420000 - AccountBalance()) < 1e-9 );
  1174. REQUIRE( fabs(57188.52260000 - AccountEquity()) < 1e-9 );
  1175. REQUIRE( fabs(46755.23282109 - AccountFreeMargin()) < 1e-9 );
  1176. REQUIRE( fabs(8089.85840000 - AccountProfit()) < 1e-9 );
  1177. ticket = OrderClose(43,0.93000000,1.18897000,3);
  1178. REQUIRE( 43 == OrderTicket() );
  1179. REQUIRE( 1 == OrderType() );
  1180. REQUIRE( fabs(3467.04000000 - OrderProfit()) < 1e-9 );
  1181. REQUIRE( fabs(1.22625000 - OrderOpenPrice()) < 1e-9 );
  1182. REQUIRE( fabs(0.93000000 - OrderLots()) < 1e-9 );
  1183. REQUIRE( 100 == AccountLeverage() );
  1184. REQUIRE( fabs(52512.50820000 - AccountBalance()) < 1e-9 );
  1185. REQUIRE( fabs(57188.52260000 - AccountEquity()) < 1e-9 );
  1186. REQUIRE( fabs(46756.84903997 - AccountFreeMargin()) < 1e-9 );
  1187. REQUIRE( fabs(4676.01440000 - AccountProfit()) < 1e-9 );
  1188. ticket = OrderSend(Symbol(),0,0.43500000,1.17832000,3,0,0);
  1189. REQUIRE( 70 == OrderTicket() );
  1190. REQUIRE( 0 == OrderType() );
  1191. REQUIRE( fabs(-8.17000000 - OrderProfit()) < 1e-9 );
  1192. REQUIRE( fabs(1.17832000 - OrderOpenPrice()) < 1e-9 );
  1193. REQUIRE( fabs(0.43000000 - OrderLots()) < 1e-9 );
  1194. REQUIRE( 100 == AccountLeverage() );
  1195. REQUIRE( fabs(52512.50820000 - AccountBalance()) < 1e-9 );
  1196. REQUIRE( fabs(55844.34630000 - AccountEquity()) < 1e-9 );
  1197. REQUIRE( fabs(44897.41570690 - AccountFreeMargin()) < 1e-9 );
  1198. REQUIRE( fabs(3331.83810000 - AccountProfit()) < 1e-9 );
  1199. ticket = OrderClose(57,0.04000000,1.17832000,3);
  1200. REQUIRE( 57 == OrderTicket() );
  1201. REQUIRE( 1 == OrderType() );
  1202. REQUIRE( fabs(208.88000000 - OrderProfit()) < 1e-9 );
  1203. REQUIRE( fabs(1.23054000 - OrderOpenPrice()) < 1e-9 );
  1204. REQUIRE( fabs(0.04000000 - OrderLots()) < 1e-9 );
  1205. REQUIRE( 100 == AccountLeverage() );
  1206. REQUIRE( fabs(52720.38980000 - AccountBalance()) < 1e-9 );
  1207. REQUIRE( fabs(55844.34630000 - AccountEquity()) < 1e-9 );
  1208. REQUIRE( fabs(44897.61225951 - AccountFreeMargin()) < 1e-9 );
  1209. REQUIRE( fabs(3123.95650000 - AccountProfit()) < 1e-9 );
  1210. ticket = OrderSend(Symbol(),0,0.01500000,1.17961000,3,0,0);
  1211. REQUIRE( 71 == OrderTicket() );
  1212. REQUIRE( 0 == OrderType() );
  1213. REQUIRE( fabs(-0.19000000 - OrderProfit()) < 1e-9 );
  1214. REQUIRE( fabs(1.17961000 - OrderOpenPrice()) < 1e-9 );
  1215. REQUIRE( fabs(0.01000000 - OrderLots()) < 1e-9 );
  1216. REQUIRE( 100 == AccountLeverage() );
  1217. REQUIRE( fabs(52720.38980000 - AccountBalance()) < 1e-9 );
  1218. REQUIRE( fabs(56052.31790000 - AccountEquity()) < 1e-9 );
  1219. REQUIRE( fabs(45093.60011709 - AccountFreeMargin()) < 1e-9 );
  1220. REQUIRE( fabs(3331.92810000 - AccountProfit()) < 1e-9 );
  1221. ticket = OrderClose(52,0.06000000,1.17961000,3);
  1222. REQUIRE( 52 == OrderTicket() );
  1223. REQUIRE( 1 == OrderType() );
  1224. REQUIRE( fabs(339.24000000 - OrderProfit()) < 1e-9 );
  1225. REQUIRE( fabs(1.23615000 - OrderOpenPrice()) < 1e-9 );
  1226. REQUIRE( fabs(0.06000000 - OrderLots()) < 1e-9 );
  1227. REQUIRE( 100 == AccountLeverage() );
  1228. REQUIRE( fabs(53057.25860000 - AccountBalance()) < 1e-9 );
  1229. REQUIRE( fabs(56052.31790000 - AccountEquity()) < 1e-9 );
  1230. REQUIRE( fabs(45094.08474142 - AccountFreeMargin()) < 1e-9 );
  1231. REQUIRE( fabs(2995.05930000 - AccountProfit()) < 1e-9 );
  1232. ticket = OrderSend(Symbol(),1,0.51700000,1.17454000,3,0,0);
  1233. REQUIRE( 72 == OrderTicket() );
  1234. REQUIRE( 1 == OrderType() );
  1235. REQUIRE( fabs(-9.69000000 - OrderProfit()) < 1e-9 );
  1236. REQUIRE( fabs(1.17454000 - OrderOpenPrice()) < 1e-9 );
  1237. REQUIRE( fabs(0.51000000 - OrderLots()) < 1e-9 );
  1238. REQUIRE( 100 == AccountLeverage() );
  1239. REQUIRE( fabs(53057.25860000 - AccountBalance()) < 1e-9 );
  1240. REQUIRE( fabs(55160.09370000 - AccountEquity()) < 1e-9 );
  1241. REQUIRE( fabs(44214.77010342 - AccountFreeMargin()) < 1e-9 );
  1242. REQUIRE( fabs(2102.83510000 - AccountProfit()) < 1e-9 );
  1243. ticket = OrderClose(66,0.49000000,1.17454000,3);
  1244. REQUIRE( 66 == OrderTicket() );
  1245. REQUIRE( 0 == OrderType() );
  1246. REQUIRE( fabs(-528.22000000 - OrderProfit()) < 1e-9 );
  1247. REQUIRE( fabs(1.18532000 - OrderOpenPrice()) < 1e-9 );
  1248. REQUIRE( fabs(0.49000000 - OrderLots()) < 1e-9 );
  1249. REQUIRE( 100 == AccountLeverage() );
  1250. REQUIRE( fabs(52530.97900000 - AccountBalance()) < 1e-9 );
  1251. REQUIRE( fabs(55160.09370000 - AccountEquity()) < 1e-9 );
  1252. REQUIRE( fabs(44803.68523989 - AccountFreeMargin()) < 1e-9 );
  1253. REQUIRE( fabs(2629.11470000 - AccountProfit()) < 1e-9 );
  1254. ticket = OrderSend(Symbol(),0,0.18800000,1.18146000,3,0,0);
  1255. REQUIRE( 73 == OrderTicket() );
  1256. REQUIRE( 0 == OrderType() );
  1257. REQUIRE( fabs(-3.42000000 - OrderProfit()) < 1e-9 );
  1258. REQUIRE( fabs(1.18146000 - OrderOpenPrice()) < 1e-9 );
  1259. REQUIRE( fabs(0.18000000 - OrderLots()) < 1e-9 );
  1260. REQUIRE( 100 == AccountLeverage() );
  1261. REQUIRE( fabs(52530.97900000 - AccountBalance()) < 1e-9 );
  1262. REQUIRE( fabs(55683.14450000 - AccountEquity()) < 1e-9 );
  1263. REQUIRE( fabs(45110.71109596 - AccountFreeMargin()) < 1e-9 );
  1264. REQUIRE( fabs(3152.16550000 - AccountProfit()) < 1e-9 );
  1265. ticket = OrderSend(Symbol(),0,0.64500000,1.17075000,3,0,0);
  1266. REQUIRE( 74 == OrderTicket() );
  1267. REQUIRE( 0 == OrderType() );
  1268. REQUIRE( fabs(-12.16000000 - OrderProfit()) < 1e-9 );
  1269. REQUIRE( fabs(1.17075000 - OrderOpenPrice()) < 1e-9 );
  1270. REQUIRE( fabs(0.64000000 - OrderLots()) < 1e-9 );
  1271. REQUIRE( 100 == AccountLeverage() );
  1272. REQUIRE( fabs(52530.97900000 - AccountBalance()) < 1e-9 );
  1273. REQUIRE( fabs(54626.97470000 - AccountEquity()) < 1e-9 );
  1274. REQUIRE( fabs(43290.78431154 - AccountFreeMargin()) < 1e-9 );
  1275. REQUIRE( fabs(2095.99570000 - AccountProfit()) < 1e-9 );
  1276. ticket = OrderClose(32,0.82000000,1.17075000,3);
  1277. REQUIRE( 32 == OrderTicket() );
  1278. REQUIRE( 1 == OrderType() );
  1279. REQUIRE( fabs(4157.40000000 - OrderProfit()) < 1e-9 );
  1280. REQUIRE( fabs(1.22145000 - OrderOpenPrice()) < 1e-9 );
  1281. REQUIRE( fabs(0.82000000 - OrderLots()) < 1e-9 );
  1282. REQUIRE( 100 == AccountLeverage() );
  1283. REQUIRE( fabs(56616.74380000 - AccountBalance()) < 1e-9 );
  1284. REQUIRE( fabs(54626.97470000 - AccountEquity()) < 1e-9 );
  1285. REQUIRE( fabs(43292.01277050 - AccountFreeMargin()) < 1e-9 );
  1286. REQUIRE( fabs(-1989.76910000 - AccountProfit()) < 1e-9 );
  1287. ticket = OrderSend(Symbol(),0,0.61000000,1.17305000,3,0,0);
  1288. REQUIRE( 75 == OrderTicket() );
  1289. REQUIRE( 0 == OrderType() );
  1290. REQUIRE( fabs(-11.59000000 - OrderProfit()) < 1e-9 );
  1291. REQUIRE( fabs(1.17305000 - OrderOpenPrice()) < 1e-9 );
  1292. REQUIRE( fabs(0.61000000 - OrderLots()) < 1e-9 );
  1293. REQUIRE( 100 == AccountLeverage() );
  1294. REQUIRE( fabs(56616.74380000 - AccountBalance()) < 1e-9 );
  1295. REQUIRE( fabs(55162.05730000 - AccountEquity()) < 1e-9 );
  1296. REQUIRE( fabs(43100.13824303 - AccountFreeMargin()) < 1e-9 );
  1297. REQUIRE( fabs(-1454.68650000 - AccountProfit()) < 1e-9 );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement