int BarLastOpenPose() { datetime t; for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if (OrderSymbol()!=Symbol()) continue; if (OrderType()>1) continue; if (t<OrderOpenPrice() ) t=OrderOpenPrice(); } }
int BarLastOpenPose() { datetime t; for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if (OrderSymbol()!=Symbol()) continue; if (OrderType()>1) continue; if (t<OrderOpenPrice() ) t=OrderOpenPrice(); } }
int BarLastOpenPose() { datetime t; for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if (OrderSymbol()!=Symbol()) continue; if (OrderType()>1) continue; if (t<OrderOpenPrice() ) t=OrderOpenPrice(); } }
下午好。我写了一个函数,应该返回一个订单开仓时的条数。
int BarLastOpenPose()
{
datetime t;
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Symbol()) continue;
if (OrderType()>1) continue;
if (t<OrderOpenPrice() ) t=OrderOpenPrice();
}
}
return (iBarShift(Symbol(),Period(),t,true));
}
然而,它总是返回-1。我在哪里犯了错误?提前感谢。
下午好。我写了一个函数,应该返回一个订单开仓时的条数。
int BarLastOpenPose()
{
datetime t;
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Symbol()) continue;
if (OrderType()>1) continue;
if (t<OrderOpenPrice() ) t=OrderOpenPrice();
}
}
return (iBarShift(Symbol(),Period(),t,true));
}
然而,它总是返回-1。我在哪里犯了错误?提前感谢。
也许它是这样的。
返回(iBarShift(Symbol(),Period(),t));也就是说,没有真。
下午好。我写了一个函数,应该返回一个订单开仓时的条数。
int BarLastOpenPose()
{
datetime t;
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Symbol()) continue;
if (OrderType()>1) continue;
if (t<OrderOpenPrice() ) t=OrderOpenPrice();
}
}
return (iBarShift(Symbol(),Period(),t,true));
}
然而,它总是返回-1。我在哪里犯了错误?预先感谢你。
t变量被指定为开盘价,尽管它被声明为一个整数。
变量t被指定为开盘价,尽管它被声明为一个整数。
你如何描述这样一种情况?
请告知。
如果当日第一个5分钟条形图的极值(例如,高点)与当日(日线)的极值重合,那么我们就做一些事情。 你会如何描述它呢?
帮助好心人!!。
亲爱的资源使用者,你们好
请帮助,谁面临着读/写一个真实的数字到一个文件。
任务是从文件中读取余额,如果当前的余额更多 - 覆盖文件。
问题是,它总是输出0(零)。
在写/读整数时,我没有发现这样的问题。
以下是代码。
双重平衡。
int file_handle_bala;
file_handle_bala=FileOpen("file_bala.dat",FILE_BIN|FILE_READ) 。
//复制位置,在空文件的情况下 - position = 0
如果(FileSize(file_handle_bala)>0)
{
balance=FileReadDouble(file_handle_bala,DOUBLE_VALUE)。
Alert(balance); ------------------------------------- 这里应该写上零,尽管之前保存的余额应该写在这里
FileClose(file_handle_bala)。
如果(AccountBalance()>balance) ------------------------------------,这条规则不起作用,因为下面的警报没有输出任何东西
{
file_handle_bala=FileOpen("file_bala.dat",FILE_BIN|FILE_WRITE)。
balance=AccountBalance()。
警报(平衡)。
FileWriteInteger(file_handle_bala,balance,DOUBLE_VALUE)。
FileClose(file_handle_bala)。
}
}
否则 // 如果文件是空的
{
FileClose(file_handle_bala); //首先,关闭打开的文件
file_handle_bala=FileOpen("file_bala.dat",FILE_BIN|FILE_WRITE); //打开进行写入。
balance=AccountBalance()。
FileWriteDouble(file_handle_bala,balance,DOUBLE_VALUE)。
FileClose(file_handle_bala)。
}
先前非常感谢!!!。
注意这一行
FileWriteInteger(file_handle_bala,balance,DOUBLE_VALUE)。
1.你应该更加尊重和友好地发布你的代码。
2.你正试图写一个8字节的整数。MQL4没有这样的数据类型。
\What did I do wrong? 为什么有这么多错误?
(我需要知道指标在过去10个柱子中的最大值)。提前感谢。
大家好!
我正在写我的第一个机器人,同时我也在熟悉MQL。我在测试过程中遇到了以下问题。
订单OP_BUYSTOP在下单后立即被执行,尽管从图表上看,价格没有达到目标值(见下图)。
USDJPY,M5(视觉)
日期 2011.09.19
时间 02:15
开放 76.903
高 76.909
低 76.890
关闭 76.890
卷 66
我正在测试所有的虱子。
也许我没有正确理解OP_BUYSTOP命令?如果价格超过一定的值,就要买,对吗?
下面是一段下单的源代码
int ticket=OrderSend(Symb, OP_BUYSTOP, Lot, Price, 0, SL, TP)。
\What did I do wrong? 为什么有这么多错误?(我需要知道过去10个柱子的指标的最大 值)。提前感谢。
你正在声明函数Hi。
在start()函数中