//+-------------------------------------------------------+//| функция перебрала открытые ордера на графике |//| и выделила: 1) с самым маленьким лотом и --- профитом |//| 2) с самым большим лотом и +++ профитом. скрипт |//| Предполагается, что такие есть. И удалила PROBA.mq4|//+-------------------------------------------------------+// Назначение функций OrdersTotal, OrderSelect, OrderClose// и прочих узнаем поставив на них курсор и нажав F1#property strictvoidOnStart()
{
int Проскальзывание=20;
int Тикет1 =0, Тикет2=0;
double Лот1=100000, Лот2=0;
bool Результат; // Чтоб избежать лишних предупреждений
// Выделение
for(int Тикет=OrdersTotal()-1; Тикет>=0; Тикет--)
{
if(!OrderSelect(Тикет,SELECT_BY_POS)) continue; // Что-то помешало - идем к следующемуif(OrderSymbol() != _Symbol) continue; // Чужой график// Если с меньшим лотом и --- профитом то запомним тикет и лотif(OrderLots()<Лот1 && OrderProfit()<0)
{
Тикет1=OrderTicket();
Лот1=OrderLots();
}
// Если с большим лотом и +++ профитом то запомним тикет и лотif(OrderLots()>Лот2 && OrderProfit()>0)
{
Тикет2=OrderTicket();
Лот2=OrderLots();
}
}
// Удаление
if(Тикет1)
{
while(!RefreshRates());
if(OrderSelect(Тикет1,SELECT_BY_TICKET)) // Чтоб получить цену закрытия
Результат=OrderClose(Тикет1, Лот1,OrderClosePrice(),Проскальзывание);
}
if(Тикет2)
{
while(!RefreshRates());
if(OrderSelect(Тикет2,SELECT_BY_TICKET))
Результат=OrderClose(Тикет2, Лот2,OrderClosePrice(),Проскальзывание);
}
}
胜利日快乐!!。已 经4天了--没有回复。让我们来试试...不满意的人亲自来信!!。
然后问题出现了:如果只有两个命令。一个是负利润的大手,一个是正利润的小手
如果只有一个订单怎么办。如果所有的订单都有相同的手数,而且都是负利润,我们应该逐一关闭吗?
你好!
我能得到一些帮助吗?专家顾问正在检索每一个刻度的 交易。我如何写代码来带走大约5个交易或只带走我想要的数量?
外来的int tp=50。
extern int sl=200。
外来的双倍lot=0.01。
空白的OnTick()
{
OrderSend("USDJPY",OP_SELL,lot,Bid,0,Ask+sl*Point,Ask-tp*Point, "Batsasho",1,0,Red);
}
我应该对代码进行什么修改、添加?
你能回答***吗?
谢谢你!
你好!
我能得到一些帮助吗?专家顾问正在检索每一个刻度的 交易。我如何写代码来带走大约5个交易或只带走我想要的数量?
外来的int tp=50。
extern int sl=200。
外来的双倍lot=0.01。
空白的OnTick()
{
OrderSend("USDJPY",OP_SELL,lot,Bid,0,Ask+sl*Point,Ask-tp*Point, "Batsasho",1,0,Red);
}
我应该对代码进行什么修改、添加?
你能回答***吗?
谢谢你!
首先,缩短测试时间间隔。最佳:1)过去三个月。2)三个月,中间有一个脱欧。确保不对所有蜱虫进行测试。事实上,在MT4中,历史上没有刻度线,它们是由价格的上下轻度抽动来模拟的。如果你在两个时间段--M15和M1上进行测试,那么看看,哪里更好。或者,更好的办法是使用演示--周一早上启动,周五晚上使用众所周知的脚本检查结果。如果我们需要测试100个专家顾问,我们打开10个终端,每个终端有10个带有专家顾问的图表。
有必要拥有大量的计算机。在一个真实的账户 上,4美元和500的杠杆已经足够了。看看任何图表--只要有正确的输入,你就能在一天内轻松地将你的存款翻倍。而这是一个月内的一百万次。互联网上有这种免费的EA吗?有人会卖这样的东西吗?因此,这些钱应该投资于计算机。我们正在寻找进入点。我们编写程序,在Excel中使用公式和宏进行计算,并编写脚本和专家顾问进行计算。然后,当我们弄清楚如何找到进入点,然后是机器人、止损、拖网、入金、存款、取款......。
胜利日快乐!已 经4天了--没有回复。让我们来试试...不满意的人在他们的个人账户中写道!!!
然后问题出现了:如果只有两个命令。用大批量的负利润,用小批量的正利润
如果只有一个订单怎么办。如果所有的订单都有相同的手数,而且都是负利润,我们应该一个一个地关闭吗?
但"Ticket "在西里尔语中不起作用,必须是拉丁语的 "Ticket"。
for(int Ticket=OrdersTotal()-1; Ticket>=0; Ticket--) - 这是按票面逆向搜索的市场订单代码(从最后一个开盘到第一个开盘)-- 我理解得对吗?
但 西里尔文的 "Ticket "不能用,你需要拉丁文的 "Ticket"。
胜利日快乐!!。已 经四天了--没有答复。让我们来试试...不满意的人在私下里写!!!。
然后就出现了一个问题:如果只有两个命令。用大批量的负利润,用小批量的正利润
而如果只有一个订单。如果所有的订单都有相同的手数,而且都是负利润,我们是否应该一个一个地关闭?
非常感谢您!这是一个很好的功能!如果没有足够的保证金来开立另一个订单,就应该调用这个函数。但我没有正确地表达我的想法;事实证明,我需要的是别的东西。最大的手数,有最大的开仓 利润,最小的手数,有负的开仓利润。