voidOnTick()
{
//---if(IsNewBar()==true)
{
if(TimeHour(TimeCurrent()) >= StartHour && TimeHour(TimeCurrent()) <= EndHour)
{
if(ExistPositions(NULL,-1,0,-1)==false)
{
OpenPosition(Symbol(),OP_SELL,0.1,Bid+sl*Point,Bid-tp*Point);
OpenPosition(Symbol(),OP_BUY,0.1,Ask-sl*Point,Ask+tp*Point);
}
}
}
}
должны просто открываться два ордера при условии что нету открытых ордеров и в определенное время
функции брал из ветки кима
пробовал магик добавлять все равно не работает
тупо игнорируется функция на проверку открытых ордеров
и открываются позиции на каждом баре
/*Предназначена для проверки наличия открытых покупок или продаж. Аналогична функции ExistOrders. По умолчанию осматривает все позиции: текущего и других инструментов. Конкретизировать отбор можно комбинацией фильтров - параметров функции:
sy - Накладывает ограничение на наименование инструмента. По умолчанию параметр равен "" - отсутствие ограничений, то есть любой инструмент. Если передать NULL, то отбор позиций будет ограничен текущим инструментом.
op - Накладывает ограничение на тип позиции (Buy/Sell). По умолчанию ограничение отсутствует, то есть проверяется наличие позиции любого типа. Допустимые значения параметра -1, OP_BUY и OP_SELL.
mn - Накладывает ограничение на идентификационное ("магическое") число позиции. По умолчанию ограничение отсутствует, то есть проверяется наличие позиции с любым магическим числом.
ot - Накладывает ограничение на время открытия позиции. Проверяется, чтобы позиция была открыта позже значения данного параметра. По умолчанию ограничение отсутствует, то есть проверяется наличие позиции с любым временем открытия.
*///+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 06.03.2008 |//| Описание : Возвращает флаг существования позиций |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//| ot - время открытия ( 0 - любое время открытия) |//+----------------------------------------------------------------------------+bool ExistPositions(string sy="",int op=-1,int mn=-1,datetime ot=0)
{
int i,k=OrdersTotal();
if(sy=="0") sy=Symbol();
for(i=0; i<k; i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==sy || sy=="")
{
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
{
if(op<0 || OrderType()==op)
{
if(mn<0 || OrderMagicNumber()==mn)
{
if(ot<=OrderOpenTime()) return(True);
}
}
}
}
}
}
return(False);
}
调试器已停止工作 - 为什么?
从5月5日中午开始,调试器在断点处不再给出变量值。在所有程序中,对于所有变量。 同时,这些程序本身也像以前一样工作。 当时(直到现在) 编辑 是"ver。5.00build 934" andMetaTrader "ver. 4.00build 646" .
下面是一个简单的脚本,这是调试器显示的内容。能否请你告诉我什么是错的?
调试器已停止工作 - 为什么?
从5月5日中午开始,调试器在断点处不再给出变量值。在所有程序中,对所有变量。 同时,这些程序本身也像以前一样工作。 当时(直到现在) 编辑 是"ver。5.00build 934" andMetaTrader "ver. 4.00build 646" .
下面是一个简单的脚本,这是调试器显示的内容。能否请你告诉我什么是错的?
在开仓 之前,我怎样才能查出一个符号的佣金和掉期(美元)?
你好..... 从前我在论坛上发现了一个图书馆,里面有所有可能的拖网类型......现在我找不到了,我挖了很多链接,都没有找到。
https://www.mql5.com/ru/code/7108
这个问题很老了,以前也有人问过100%的问题,但这个功能又他妈的不灵了,我不记得为什么....。
这个问题很老了,以前也有人问过100%的问题,但这个功能又他妈的不灵了,我不记得为什么....。
为什么你认为 "愚蠢地忽略了...... "可能很有效,以至于它总是返回错误。也就是说,它只是没有看到开放的订单,或者更糟糕的是...这是它的设计方式:)))
它是一个取自分支的函数
是一个取自分支的函数
但是,如果你觉得自己很难开出这样的支票,那就使用现有的...像这样试试吧。