[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 260 1...253254255256257258259260261262263264265266267...1145 新评论 Vladimir Yaroshevskiy 2009.10.16 11:03 #2591 公民你好。 为了不使论坛真的变得杂乱无章,我决定在这个主题中写。请回答,在我的两台电脑上曾有(现在只剩下一台,在匆忙中重新安装了Windows)MetaTrader 4,有一个头脑风暴,我失去了我的密码,所以仍然保持MT4未被触动,我可以看到,并登录,并正常使用这个帐户,但我看到密码只在星号下。我看到在MT4输入号码和密码的对话框 中,有一个复选框 "存储个人信息",我可以在某个地方看到这个文件,密码会在里面吗? Alexander Sevastyanov 2009.10.16 11:13 #2592 vovdec >> : ...我丢失了我的密码,所以这就是MT4仍然没有被触动的地方,我可以看到,并登录,并正常使用这个账户,但我只能看到星号下面的密码。我看到在MT4输入号码和密码的对话框中,有一个复选框 "存储个人信息",我可以在某个地方看到这个文件吗,密码会在里面吗...? MT4的密码是以加密的形式存储的,其位置不会被公开。 当地的一些野牛已经把它拉出来了,但说句不好听的,这是个挑战。 当复制/转移MT4文件夹时,密码会丢失。为安全目的而制造。 任何真实账户的密码都可以通过TP恢复。 从演示中,最好是保存它或改变它为一个你不会忘记的,紧接着 >> 最好在你打开演示后再保存或更改。 [Deleted] 2009.10.16 19:08 #2593 你好。我在这里做了一个小的EA,它只是按时间开了一个头寸。基本上一切正常,但我无法在历史上测试。帮助我理解它。 //+------------------------------------------------------------------+ //| Midnight.mq4 | //| BaceK | //| | //+------------------------------------------------------------------+ #财产版权"BaceK" #属性链接"" //---- 输入参数 Extern int Dist_SL=20。 外部int_TP=30。 外来的双倍Prots=0.35。 //+------------------------------------------------------------------+ //|专家初始化功能| //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //|专家去初始化功能| //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //|专家启动功能| //+------------------------------------------------------------------+ int start() { string Symb=Symbol(); // financial. instrument. int Min_Dist=MarketInfo(Symb,MODE_STOPLEVEL); // Min_Dist //Alert("Min. distance = ",Min_Dist)。 double Min_Lot=MarketInfo(Symb,MODE_MINLOT);//最小手数。 //Alert("Min. lot size = ",Min_Lot)。 double Free =AccountFreeMargin(); // Free意味着 //Alert("Free money = ",Free); double One_Lot=MarketInfo(Symb,MODE_MARGINREQUIRED);//One_Lot的E值 //Alert("Cost per lot = ",One_Lot)。 double Lot=MathFloor((Free*Prots)/(One_Lot*Min_Lot))*Min_Lot;//Lots //Alert("Bars = ",Lot)。 //Alert("Bars = ",Bars)。 //----------------------------------------------- // 检查是否有自由空间 if ( Lot != 0 ) { //Alert("Work onwards = ",OrderSymbol())。 // 检查工作时间 int h=TimeHour(TimeCurrent())。 如果 ( h < 1 ) { for(int i=1; i<=OrdersTotal(); i++) // 订单循环 { 如果(OrderSelect(i-1,SELECT_BY_POS)==true) //如果有 { // 订单分析。 if (OrderSymbol()!= Symb) // 不是我们的金融工具。 { //Alert("Work Next = ",OrderSymbol())。 // 确定哪种方式可以打开 如果(iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)< 0) { //Alert("Long position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。 int ticket=OrderSend(Symb,OP_BUY,Lot,Ask,3,Bid-Dist_SL*Point, Bid+Dist_TP*Point)。 否则 { //Alert("Short Position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。 int ticket1=OrderSend(Symb,OP_SELL,Lot,Bid,3,Bid+Dist_SL*Point, Bid-Dist_TP*Point)。 } if (ticket>0 || ticket1>0) // 成功了 :) { // 提醒("一个卖出的订单被设置为",ticket || ticket1)。 睡眠(5000)。 否则 { int Error=GetLastError(); // failed :( switch(Error) // 无法克服的错误 { case 129:Alert("Wrong price. Try again...")。 RefreshRates(); // 刷新数据。 return(0); case 135:Alert("The price changed. Try again..."); RefreshRates(); // 刷新数据。 return(0); // 下一次迭代。 case 146:Alert("The trading subsystem is busy. Try again..."); Sleep(500); // 简单的解决方案。 RefreshRates(); // 刷新数据。 return(0); // 下一次迭代 } switch(Error) // 关键错误 { case 2 : Alert("General error;) break; // 退出开关 case 5 : Alert("客户终端的旧版本。")。 return(0); // 退出开关。 case 64 : Alert("Account blocked.")。 return(0); // 在开关中退出 case 133:Alert("禁止交易")。 return(0); // 退出开关 默认:Alert("An error has occurred",Error);//其他选项 } //Alert("GetLastError(); return(0); } 否则 { //Alert("Exit by Symb = ",Symb)。 return(0); } 否则 { //Alert("Exit by no order = ",Symb)。 如果(iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)< 0) { //Alert("Long position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。 int ticket2=OrderSend(Symb,OP_BUY,Lot,Ask,3,Bid-Dist_SL*Point, Bid+Dist_TP*Point)。 否则 { //Alert("Short Position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。 int ticket3=OrderSend(Symb,OP_SELL,Lot,Bid,3,Bid+Dist_SL*Point, Bid-Dist_TP*Point)。 } 如果(ticket2>0 || ticket3>0) // 它成功了 :) { //提示("卖出订单设置",ticket2 || ticket3)。 睡眠(5000)。 否则 { int Error1=GetLastError(); // failed :( switch(Error1) // 无法克服的错误 { case 129:Alert("Wrong price. Try again...")。 RefreshRates(); // 刷新数据。 return(0); case 135:Alert("The price changed. Try again..."); RefreshRates(); // 刷新数据。 return(0); // 下一次迭代。 case 146:Alert("The trading subsystem is busy. Try again..."); Sleep(500); // 简单的解决方案。 RefreshRates(); // 刷新数据。 return(0); // 下一次迭代 } switch(Error1) // 关键错误 { case 2 : Alert("General error;) break; // 退出开关 case 5 : Alert("客户终端的旧版本。")。 return(0); // 退出开关。 case 64 : Alert("Account blocked.")。 return(0); // 在开关中退出 case 133:Alert("禁止交易")。 return(0); // 退出开关 默认:Alert("An error has occurred",Error1);//其他选项 } Alert("GetLastError(); return(0); } } } 否则 { // Alert("Exit by time = ",Hour())。 return(0); } 否则 { //Alert("Exit by Lot = ",Lot)。 return(0); } //---- //Alert ("Script finished -----------------------------")。 return(0); } //+------------------------------------------------------------------+ [WARNING CLOSED!] Any newbie How to get correct Ask! Mykola Demko 2009.10.16 19:16 #2594 到底是什么不工作? 如果警报在测试器中如此不工作,那就用打印或注释来代替它。 而不是警告,把一个函数像这样。 void ComAlert(string text) {//+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ if(IsTesting())Comment( text);else Alert( text); return; }//+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ [Deleted] 2009.10.16 19:18 #2595 该顾问在测试器中根本没有进行过一次交易。一切都是零。 Mykola Demko 2009.10.16 19:23 #2596 BaceK1 >> : 该顾问在测试器中根本没有进行过一次交易。全部为零。 >> 它在现场工作吗? [Deleted] 2009.10.16 19:26 #2597 它在直播模式下工作。它 以设定的参数在所需方向上打开位置。它在测试器中没有打开任何东西。 Mykola Demko 2009.10.16 19:28 #2598 BaceK1 >> : 在现场模式下工作。它以设定的参数在所需方向上打开位置。在测试器中,它没有打开任何东西。 日志中说什么?勇敢点,还是我必须从你嘴里套出每一个字。 [Deleted] 2009.10.16 19:34 #2599 2009.10.16 20:33:19 2009.07.31 22:43 Midnight EURJPY,Daily:Alert: Time Out = 22 从下往上的第三个警报 [Deleted] 2009.10.16 19:54 #2600 我如何在一个准确的时间内开仓?例如,一个仓位必须在当地时间00.15开仓。 1...253254255256257258259260261262263264265266267...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
公民你好。
为了不使论坛真的变得杂乱无章,我决定在这个主题中写。请回答,在我的两台电脑上曾有(现在只剩下一台,在匆忙中重新安装了Windows)MetaTrader 4,有一个头脑风暴,我失去了我的密码,所以仍然保持MT4未被触动,我可以看到,并登录,并正常使用这个帐户,但我看到密码只在星号下。我看到在MT4输入号码和密码的对话框 中,有一个复选框 "存储个人信息",我可以在某个地方看到这个文件,密码会在里面吗?
...我丢失了我的密码,所以这就是MT4仍然没有被触动的地方,我可以看到,并登录,并正常使用这个账户,但我只能看到星号下面的密码。我看到在MT4输入号码和密码的对话框中,有一个复选框 "存储个人信息",我可以在某个地方看到这个文件吗,密码会在里面吗...?
MT4的密码是以加密的形式存储的,其位置不会被公开。
当地的一些野牛已经把它拉出来了,但说句不好听的,这是个挑战。
当复制/转移MT4文件夹时,密码会丢失。为安全目的而制造。
任何真实账户的密码都可以通过TP恢复。
从演示中,最好是保存它或改变它为一个你不会忘记的,紧接着
>> 最好在你打开演示后再保存或更改。
你好。我在这里做了一个小的EA,它只是按时间开了一个头寸。基本上一切正常,但我无法在历史上测试。帮助我理解它。
//+------------------------------------------------------------------+
//| Midnight.mq4 |
//| BaceK |
//| |
//+------------------------------------------------------------------+
#财产版权"BaceK"
#属性链接""
//---- 输入参数
Extern int Dist_SL=20。
外部int_TP=30。
外来的双倍Prots=0.35。
//+------------------------------------------------------------------+
//|专家初始化功能|
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+
int start()
{
string Symb=Symbol(); // financial. instrument.
int Min_Dist=MarketInfo(Symb,MODE_STOPLEVEL); // Min_Dist
//Alert("Min. distance = ",Min_Dist)。
double Min_Lot=MarketInfo(Symb,MODE_MINLOT);//最小手数。
//Alert("Min. lot size = ",Min_Lot)。
double Free =AccountFreeMargin(); // Free意味着
//Alert("Free money = ",Free);
double One_Lot=MarketInfo(Symb,MODE_MARGINREQUIRED);//One_Lot的E值
//Alert("Cost per lot = ",One_Lot)。
double Lot=MathFloor((Free*Prots)/(One_Lot*Min_Lot))*Min_Lot;//Lots
//Alert("Bars = ",Lot)。
//Alert("Bars = ",Bars)。
//-----------------------------------------------
// 检查是否有自由空间
if ( Lot != 0 )
{
//Alert("Work onwards = ",OrderSymbol())。
// 检查工作时间
int h=TimeHour(TimeCurrent())。
如果 ( h < 1 )
{
for(int i=1; i<=OrdersTotal(); i++) // 订单循环
{
如果(OrderSelect(i-1,SELECT_BY_POS)==true) //如果有
{
// 订单分析。
if (OrderSymbol()!= Symb) // 不是我们的金融工具。
{
//Alert("Work Next = ",OrderSymbol())。
// 确定哪种方式可以打开
如果(iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)< 0)
{
//Alert("Long position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。
int ticket=OrderSend(Symb,OP_BUY,Lot,Ask,3,Bid-Dist_SL*Point, Bid+Dist_TP*Point)。
否则
{
//Alert("Short Position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。
int ticket1=OrderSend(Symb,OP_SELL,Lot,Bid,3,Bid+Dist_SL*Point, Bid-Dist_TP*Point)。
}
if (ticket>0 || ticket1>0) // 成功了 :)
{
// 提醒("一个卖出的订单被设置为",ticket || ticket1)。
睡眠(5000)。
否则
{
int Error=GetLastError(); // failed :(
switch(Error) // 无法克服的错误
{
case 129:Alert("Wrong price. Try again...")。
RefreshRates(); // 刷新数据。
return(0);
case 135:Alert("The price changed. Try again...");
RefreshRates(); // 刷新数据。
return(0); // 下一次迭代。
case 146:Alert("The trading subsystem is busy. Try again...");
Sleep(500); // 简单的解决方案。
RefreshRates(); // 刷新数据。
return(0); // 下一次迭代
}
switch(Error) // 关键错误
{
case 2 : Alert("General error;)
break; // 退出开关
case 5 : Alert("客户终端的旧版本。")。
return(0); // 退出开关。
case 64 : Alert("Account blocked.")。
return(0); // 在开关中退出
case 133:Alert("禁止交易")。
return(0); // 退出开关
默认:Alert("An error has occurred",Error);//其他选项
}
//Alert("GetLastError();
return(0);
}
否则
{
//Alert("Exit by Symb = ",Symb)。
return(0);
}
否则
{
//Alert("Exit by no order = ",Symb)。
如果(iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)< 0)
{
//Alert("Long position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。
int ticket2=OrderSend(Symb,OP_BUY,Lot,Ask,3,Bid-Dist_SL*Point, Bid+Dist_TP*Point)。
否则
{
//Alert("Short Position = ",iOpen(NULL,PERIOD_D1,1)-iClose(NULL,PERIOD_D1,1)) 。
int ticket3=OrderSend(Symb,OP_SELL,Lot,Bid,3,Bid+Dist_SL*Point, Bid-Dist_TP*Point)。
}
如果(ticket2>0 || ticket3>0) // 它成功了 :)
{
//提示("卖出订单设置",ticket2 || ticket3)。
睡眠(5000)。
否则
{
int Error1=GetLastError(); // failed :(
switch(Error1) // 无法克服的错误
{
case 129:Alert("Wrong price. Try again...")。
RefreshRates(); // 刷新数据。
return(0);
case 135:Alert("The price changed. Try again...");
RefreshRates(); // 刷新数据。
return(0); // 下一次迭代。
case 146:Alert("The trading subsystem is busy. Try again...");
Sleep(500); // 简单的解决方案。
RefreshRates(); // 刷新数据。
return(0); // 下一次迭代
}
switch(Error1) // 关键错误
{
case 2 : Alert("General error;)
break; // 退出开关
case 5 : Alert("客户终端的旧版本。")。
return(0); // 退出开关。
case 64 : Alert("Account blocked.")。
return(0); // 在开关中退出
case 133:Alert("禁止交易")。
return(0); // 退出开关
默认:Alert("An error has occurred",Error1);//其他选项
}
Alert("GetLastError();
return(0);
}
}
}
否则
{
// Alert("Exit by time = ",Hour())。
return(0);
}
否则
{
//Alert("Exit by Lot = ",Lot)。
return(0);
}
//----
//Alert ("Script finished -----------------------------")。
return(0);
}
//+------------------------------------------------------------------+
到底是什么不工作? 如果警报在测试器中如此不工作,那就用打印或注释来代替它。
而不是警告,把一个函数像这样。
该顾问在测试器中根本没有进行过一次交易。一切都是零。
该顾问在测试器中根本没有进行过一次交易。全部为零。
>> 它在现场工作吗?
在现场模式下工作。它以设定的参数在所需方向上打开位置。在测试器中,它没有打开任何东西。
日志中说什么?勇敢点,还是我必须从你嘴里套出每一个字。
2009.10.16 20:33:19 2009.07.31 22:43 Midnight EURJPY,Daily:Alert: Time Out = 22
从下往上的第三个警报