[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 221 1...214215216217218219220221222223224225226227228...631 新评论 Евгений 2012.06.30 12:41 #2201 让我试着为你 "翻译 "一下第一条。 if(((OrderSymbol() == Symbol() && OnlyThisSymbol) || !OnlyThisSymbol)) "如果表达式1.或2.中至少有一个是真的,那么......。" 1.订单工具与图表工具相同,外部变量OnlyThisSymbol的值为true 2.OnlyThisSymbol外部变量的值等于false。 现在,这个条目的意义。 有一个列举的订单,可以通过不同的过滤器进行仓位关闭。这个记录是一个按仪器过滤。如果你设置了onlyThisSymbol外部变量的值,你可以选择是只按图表符号平仓还是按任何符号平仓。 [删除] 2012.07.01 04:38 #2202 alsu:并非如此。问题是,Experts变量已经具有int类型,因此在给它赋值之前应该进行类型转换,也就是说,编译器* 从盒子里取出一个双倍的值(它在你的程序中没有名字,只是被写到主内存或CPU寄存器中编译器知道的某个地址上)。*对上述变量的值做了所有必要的修改,并将一个新的值(int类型!)写入专家变量中。*将这个值(int!类型)分配给变量New_Experts。它们具有相同的类型,所以只是将一个值从一个内存位置转移到另一个内存位置的问题。P.S. 很高兴看到有的人对自己的行为理解得如此详细。事实上,不开玩笑。保持联系。 日安...处理你的最后和倒数第二条信息,我感到很棘手。特别是(你在上一个答案中的信息):"那么当我们从盒子里取出一个值时,它是双倍类型 的,但如果我们给出命令将结果写入int类型的变量中,编译器会自动采取所有必要的行动,将该值放入一个新的盒子中。" 而你在上一个答案中的信息:"重点是专家变量已经具有int类型...当我们把它 "放入 "GV变量框的时候,我们不是已经把它转换成了双倍类型吗? 提前感谢您的回答 Mikhail Skakov 2012.07.01 07:15 #2203 朋友们,你们能给我建议吗?MQL4是否允许以编程方式设置账户余额值,而不仅仅是在测试器的初始条件中? 我将解释我为什么需要它,只是为了使问题清楚。我想让专家顾问 在优化 过程中改变账户余额的大小,作为一个变量。 Craft 2012.07.01 11:42 #2204 下午好。 我试图创建一个指标,根据(H-L)/2在图表上显示Sl和Tp,但它不起作用--它只是按收盘价绘制,问题在哪里? 由于基础是由一个指标ATR采取的。 //+------------------------------------------------------------------+ //| Tp/Sl.mq4 | //| Copyright © 2005, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, MetaQuotes Software Corp." #property link "http://www.metaquotes.net/" #property indicator_chart_window #property indicator_buffers 6 #property indicator_color1 Red #property indicator_color2 Green #property indicator_color3 Red #property indicator_color4 Green //---- input parameters extern int PeriodMM=25; //---- buffers double SlBuffer[]; double TpBuffer[]; double SlBuffer2[]; double TpBuffer2[]; double TempBuffer[]; double TempBuffer2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- 1 additional buffer used for counting. IndicatorBuffers(4); //---- indicator line SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,SlBuffer); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,TpBuffer); SetIndexStyle(2,DRAW_LINE); SetIndexBuffer(2,SlBuffer2); SetIndexStyle(3,DRAW_LINE); SetIndexBuffer(3,TpBuffer2); SetIndexBuffer(4,TempBuffer); SetIndexBuffer(5,TempBuffer2); //---- SetIndexDrawBegin(0,PeriodMM); //---- return(0); } //+------------------------------------------------------------------+ //| Average True Range | //+------------------------------------------------------------------+ int start() { int i,counted_bars=IndicatorCounted(); //---- if(Bars<=PeriodMM) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=PeriodMM;i++) SlBuffer[Bars-i]=0.0; TpBuffer[Bars-i]=0.0; SlBuffer2[Bars-i]=0.0; TpBuffer2[Bars-i]=0.0; //---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; double close = Close[i]; TempBuffer[i]=(high-low)/2; TempBuffer2[i]=(high-low)/2*2.5; i--; } //---- if(counted_bars>0) counted_bars--; int limit=Bars-counted_bars; for(i=0; i<limit; i++) SlBuffer[i]=Close[i]+iMAOnArray(TempBuffer,Bars,PeriodMM,0,MODE_SMA,i); TpBuffer[i]=Close[i]+iMAOnArray(TempBuffer2,Bars,PeriodMM,0,MODE_SMA,i); SlBuffer2[i]=Close[i]-iMAOnArray(TempBuffer,Bars,PeriodMM,0,MODE_SMA,i); TpBuffer2[i]=Close[i]-iMAOnArray(TempBuffer2,Bars,PeriodMM,0,MODE_SMA,i); //---- return(0); } //+------------------------------------------------------------------+ orb 2012.07.01 12:36 #2205 同志们,我不明白为什么CSV文件没有被创建,以前一切都很正常。//+------------------------------------------------------------------+ //| TP1.mq4 | //| S.I.Shlikov | //| | //+------------------------------------------------------------------+ #property copyright "S.I.Shlikov" #property link "" int init() { int h=FileOpen("H"+(Period()/60)+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";"); if(h<1) { Print("Файл не найден : ", GetLastError()); return(false); } FileSeek(h, 0, SEEK_END); FileWrite(h,"Date","EURUSD","GBPUSD","NZDUSD","USDJPY","EURJPY","GBPJPY","USDCHF","EURCHF","GBPCHF"); FileClose(h); } int start() { int h=FileOpen("H"+(Period()/60)+".csv",FILE_CSV|FILE_WRITE|FILE_READ,";"); if(h<1) { Print("Файл не найден : ", GetLastError()); return(false); } string Wtime=TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES); FileSeek(h, 0, SEEK_END); FileWrite(h,Wtime,DoubleToStr(iClose("EURUSD",Period(),0),MarketInfo("EURUSD",MODE_DIGITS)), DoubleToStr(iClose("GBPUSD",Period(),0),MarketInfo("GBPUSD",MODE_DIGITS)), DoubleToStr(iClose("NZDUSD",Period(),0),MarketInfo("NZDUSD",MODE_DIGITS)), DoubleToStr(iClose("USDJPY",Period(),0),MarketInfo("USDJPY",MODE_DIGITS)), DoubleToStr(iClose("EURJPY",Period(),0),MarketInfo("EURJPY",MODE_DIGITS)), DoubleToStr(iClose("GBPJPY",Period(),0),MarketInfo("GBPJPY",MODE_DIGITS)), DoubleToStr(iClose("USDCHF",Period(),0),MarketInfo("USDCHF",MODE_DIGITS)), DoubleToStr(iClose("EURCHF",Period(),0),MarketInfo("EURCHF",MODE_DIGITS)), DoubleToStr(iClose("GBPCHF",Period(),0),MarketInfo("GBPCHF",MODE_DIGITS)) ); FileClose(h); return(0); } --- 2012.07.01 12:47 #2206 orb: 同志们,我不明白为什么CSV文件没有被创建,以前一切都很正常。 错误号码是什么? orb 2012.07.01 12:49 #2207 sergeev: 错误号码是什么? 没有错误号码......只是没有创建文件,正在寻找ALPARI/tester/files/。 --- 2012.07.01 12:56 #2208 orb: 没有错误号码......只是没有创建文件,寻找ALPARI/tester/files/。 好吧,看看另一个。 orb 2012.07.01 12:56 #2209 sergeev: 好吧,看看其他地方。 我已经做了。 --- 2012.07.01 13:06 #2210 orb: 已经看过了。 恭喜你。 1...214215216217218219220221222223224225226227228...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
让我试着为你 "翻译 "一下第一条。
"如果表达式1.或2.中至少有一个是真的,那么......。"
1.订单工具与图表工具相同,外部变量OnlyThisSymbol的值为true
2.OnlyThisSymbol外部变量的值等于false。
现在,这个条目的意义。
有一个列举的订单,可以通过不同的过滤器进行仓位关闭。这个记录是一个按仪器过滤。如果你设置了onlyThisSymbol外部变量的值,你可以选择是只按图表符号平仓还是按任何符号平仓。
并非如此。问题是,Experts变量已经具有int类型,因此在给它赋值之前应该进行类型转换,也就是说,编译器
* 从盒子里取出一个双倍的值(它在你的程序中没有名字,只是被写到主内存或CPU寄存器中编译器知道的某个地址上)。
*对上述变量的值做了所有必要的修改,并将一个新的值(int类型!)写入专家变量中。
*将这个值(int!类型)分配给变量New_Experts。它们具有相同的类型,所以只是将一个值从一个内存位置转移到另一个内存位置的问题。
P.S. 很高兴看到有的人对自己的行为理解得如此详细。事实上,不开玩笑。保持联系。
日安...处理你的最后和倒数第二条信息,我感到很棘手。特别是(你在上一个答案中的信息):"那么当我们从盒子里取出一个值时,它是双倍类型 的,但如果我们给出命令将结果写入int类型的变量中,编译器会自动采取所有必要的行动,将该值放入一个新的盒子中。" 而你在上一个答案中的信息:"重点是专家变量已经具有int类型...当我们把它 "放入 "GV变量框的时候,我们不是已经把它转换成了双倍类型吗?
提前感谢您的回答
朋友们,你们能给我建议吗?MQL4是否允许以编程方式设置账户余额值,而不仅仅是在测试器的初始条件中?
我将解释我为什么需要它,只是为了使问题清楚。我想让专家顾问 在优化 过程中改变账户余额的大小,作为一个变量。
下午好。
我试图创建一个指标,根据(H-L)/2在图表上显示Sl和Tp,但它不起作用--它只是按收盘价绘制,问题在哪里?
由于基础是由一个指标ATR采取的。
同志们,我不明白为什么CSV文件没有被创建,以前一切都很正常。
错误号码是什么?
错误号码是什么?
没有错误号码......只是没有创建文件,寻找ALPARI/tester/files/。
好吧,看看另一个。
好吧,看看其他地方。
已经看过了。
恭喜你。