[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 622

 

厉以宁

你能告诉我glob.变量被写入哪个文件吗?这样就可以迅速转移到另一个终端。

 
rigonich:

同样是45,在这种形式下,OrderSelect(LastClosetPoz(),SELECT_BY_TICKET)默认在挂单和开单中选择,而这个订单不在其中。 把OrderSelect(LastClosetPoz(),SELECT_BY_TICKET, MODE_HISTORY)


naa....nii...MODEs...只与SELECT_BY_POS 一起工作。还有门票本身!它绝对是个人的,所以你甚至不需要指定它在哪里。

(完成那里的答案......我正在最后确定解决方案)

-------Parameters

指数 - 订单索引或订单票,取决于第二个参数。
选择 - 选择旗帜。它可以是以下任何一个值。
SELECT_BY_POS - 订单池中的索引。
SELECT_BY_TICKET - 索引是订单票。
- 可选的订单池索引。当所选参数为SELECT_BY_POS时使用。它可以是以下任何一个值。
MODE_TRADES (默认) - 从交易池中选择的订单(已开仓和挂单)。
MODE_HISTORY - 从历史库中选择的订单(关闭和取消的订单)。
 
lottamer:


noa....nil...mods...只在SELECT_BY_POS 下工作。还有门票本身!它是完全独立的,所以你甚至不需要指定它在哪里。

-------Parameters

指数 - 订单索引或订单票,取决于第二个参数。
选择 - 选择旗帜。它可以是以下任何一个值:
SELECT_BY_POS - 订单池中的索引,
SELECT_BY_TICKET - 索引是订单票。
- 可选的订单池索引。当所选参数为SELECT_BY_POS时使用。它可以是以下任何一个值:
MODE_TRADES(默认)--从交易池中选择的订单(开仓和挂单),
MODE_HISTORY--从历史池中选择的订单(关闭和取消的订单)。


对不起,我弄错了,你是对的,它只是在你的行中if (Print("Stop loss", OrderStopLoss());)Print("Stop loss", OrderStopLoss());;没有条件,而是插入了一个操作符。
 
Desead:

我不是一个程序员,但有时我会自己写最简单的东西。你可以用任何语言编写一个简单的机器人,这根本不是问题。我不想把一部分功能作为dll执行,然后从μl中调用,而是要用自己的接口编写整个机器人,而不调用Metatrader。我已经发明了很多不同的视觉语言,在那里我可以不费吹灰之力。


我明白了,在MT软件包中,有用C2C++编写dlls的例子。

图录:MTexperts样品所在的图录。拿着它,根据你的需要进行编辑。你不需要有深厚的C++知识就可以使用它。对C语言基础知识和语法的了解就足够了。

请注意:项目必须有.def文件,否则你将无法连接dll。在这个例子中,是这样一个项目,因为它应该是。
 
xant:

rigonich

подскажите пожалуйста, в какой файл записываются глоб. переменные? Чтобы можно было быстро перебрасывать на другой терминал. 

我不知道,我没有找到,但你也许可以在终端打开service->global variables,从那里复制它们,试试吧。

一般来说,它与几个终端的同步有关,试着在这个方向上搜索,我想我在这个网站上或文章中,或在kodobase中看到过这样的东西。

 
rigonich:


terminal\profiles\gvariables.dat
 
r772ra:


terminal\profiles\gvariables.dat

谢谢,这是正确的,我已经看了大部分的文件夹,但我还没有想到要看档案。
 
rigonich:

对不起,我搞砸了,你是对的,这只是你的行文if (Print( "Stop loss", OrderStopLoss();)Print("Stop loss", OrderStopLoss();); 没有条件,而是插入了一个操作符


我又被卡住了...在最后一步...。

票子已经被拉出来了--它们在工作。现在我正试图使用它们--拉出相应位置的OrderProfit....它打印的是零......(但票据打印正确)。

如果你删除==true- 同样的事情....

有什么方法可以在不使用 if的情况 下使用OrderSelect

当它发挥作用时。

如果(OrderSelect( Ticket1,SELECT_BY_TICKET))Print("Stop loss", OrderStopLoss())。

打印止损水平。

---------------------------

我将不得不采取你的版本与一个共同的循环。OrderProfit 在那里被清楚地认识到了!"。该死的,有什么区别,一切都一样!?

 LastClosetPoz();SecLastClosetPoz();   Print ( LastClosetPoz(),"___",SecLastClosetPoz()); 

 

if  (OrderSelect( LastClosetPoz(),SELECT_BY_TICKET)==true) X=OrderProfit();



if  (OrderSelect( SecLastClosetPoz(),SELECT_BY_TICKET)==true) Y=OrderProfit(); Print (X,"+",);

 
 
lottamer:


我又被卡住了...在最后一步...。

票据已经被拉出来了--它们起作用了。现在我正试图使用它们--拉出相应位置的OrderProfit....它打印的是零......(但票据打印正确)。

如果你删除==true- 同样的事情....

有什么办法可以在不使用 if 的情况下使用OrderSelect

当它发挥作用时。

如果(OrderSelect( Ticket1,SELECT_BY_TICKET))Print("Stop loss", OrderStopLoss())。

打印止损水平。

---------------------------

我将不得不采取你的版本与一个共同的循环。OrderProfit 在那里被清楚地认识到了!"。该死的,有什么区别,一切都一样!?

OrderSelect( SecLastClosetPoz(),SELECT_BY_TICKET);
你也可以这样使用,如果带有所需票据的订单存在,该函数将选择它。
 

r772ra

谢谢你的提示