[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 143 1...136137138139140141142143144145146147148149150...1145 新评论 Rid 2009.07.13 13:52 #1421 你去吧。 //+------------------------------------------------------------------+ extern string _____= "Параметры Длинных позиций"; extern int RSI_period =20; extern int MA_period =21; extern int TP=200; extern int SL=61; extern string ____= "Параметры Коротких позиций"; extern int RSI_period_SELL =20; extern int MA_period_SELL =21; extern int TP_=200; extern int SL_=61; //------------------------------ extern string ______= "Общие Параметры "; extern double Lot=0.1; extern int Slippage=3; extern int Low_lim=8; extern int Up_lim=8; int ExpertBars; int ticket; //********************************************************************* //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- ExpertBars = Bars; //---- return(0); } 下一步。 int start() { bool isNewBar=false; if ( ExpertBars !=Bars) { ExpertBars=Bars; isNewBar=true; } if ( isNewBar) { //если есть новый бар //===== Ищем возможность войти в рынок ========================================= if ( Long) { //если "выключатель" включен if (! ExpertOrder( MagicLong ))//если нет открытых длинных позиций { //------заполняем массив значениями RSI для длинных позиций -------- double RSI_array_buy[50]; int j=0; while ( j<50) { RSI_array_buy[ j]= iRSI(NULL, 0, RSI_period, MODE_SMA, j); j++; } ArraySetAsSeries( RSI_array_buy,true); double MA_low =iMAOnArray( RSI_array_buy,0, MA_period,1,MODE_SMA,0); double RSI_0=iRSI(NULL, 0, RSI_period,MODE_SMA, 1); double RSI_1=iRSI(NULL, 0, RSI_period,MODE_SMA, 2); //---------проверяем условие на покупку---------------------------- if ( ( RSI_1< MA_low) && ( RSI_0> MA_low) ) { ticket=OrderSend(Symbol(),0, Lot,Ask, Slippage,Bid- SL*Point,Ask+ TP*Point,NULL, MagicLong,0,CLR_NONE); if ( ticket<0) { Print("Ошибка открытия ордера BUY #", GetLastError()); return (0); } } }} //-------------------------------------------------------------- if ( Short) { //если "выключатель" включен if (! ExpertOrder( MagicShort ))//если нет открытых длинных позиций { // ---заполняем массив значениями рси для коротких позиций double RSI_array_sell[50]; int k=0; while ( k<50) { RSI_array_sell[ k]= iRSI(NULL, 0, RSI_period_SELL, MODE_SMA, k); k++; } ArraySetAsSeries( RSI_array_sell,true); double MA_up =iMAOnArray( RSI_array_sell,0, MA_period_SELL ,1,MODE_SMA,0); double RSI_0s=iRSI(NULL, 0, RSI_period_SELL,MODE_SMA, 1); double RSI_1s=iRSI(NULL, 0, RSI_period_SELL,MODE_SMA,2); //--------проверяем условие на продажу------------------------------ if ( ( RSI_1s > MA_up ) && ( RSI_0s < MA_up )) { ticket=OrderSend(Symbol(),1, Lot,Bid, Slippage,Bid+ SL_*Point,Bid- TP_*Point,NULL, MagicShort,0,CLR_NONE); if ( ticket<0) { Print("Ошибка открытия ордера SELL #", GetLastError()); return (0); } } }} Виталий 2009.07.13 15:49 #1422 谢谢你! Grivenik 2009.07.13 17:04 #1423 你好!试图以直方图的形式显示从低位和高位TF的信号,但出现了5个错误 "ExtMapBuffer2"-变量未定义",怎么了?.....Help,如果你不能!! 谢谢 附加的文件: dinap_zzg.mq4 4 kb Andriy Matviyevs'kyy 2009.07.13 17:07 #1424 先生们(同志们:))。 我试图以箭头形式实现一个MAMy指标(它在kodobase中)。 我正试图以箭头形式实现MAMy指标(它在kodobase中)。 箭头画在未形成的柱子上,如果到了形成的时候,条件发生了变化--箭头不会被删除,只有在重新启动指标时才能被删除。 我想让箭头只画在已成型的柱子上。如果你有时间--给我上一堂实践课--纠正这个混乱的代码......。 (很有可能你会发现一些多余的东西--对不起(要从头写一个指标--我的手不是从那里长出来的--虽然它们是金色的),我还是在使用别人的工件)。 提前感谢。 附加的文件: mamylstartclimitstrue.mq4 4 kb Astral 2009.07.14 01:04 #1425 非常感谢您! 这正是医生吩咐的! 因为从账户历史来看,在图表上。 它看起来不是很好。 [Deleted] 2009.07.14 08:30 #1426 请你告诉我,如果没有调试器,也许有一个按键等待和一个对话输出函数或类似的东西,mql如何模拟调试器(以变量的当前值一步一步地观察算法)? [Deleted] 2009.07.14 09:00 #1427 我找到了打印 功能,但现在我有另一个问题:指标输出是如何工作的? 图表上有512条。理论上,代码应该在1-14条上打印起点和条数,然后在其他条上打印主线和条数,但由于某些原因,它只打印了一路的起点和295条。你能告诉我什么是错的吗? #property indicator_chart_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Yellow extern int Param=14; extern double Razmah=0.9; double VH[], VL[], Rang=0, z=0, z1=0, num=0, num1=0; int init() { SetIndexBuffer(0, VH); SetIndexBuffer(1, VL); return(0); } int start() { int i, counted_bars=IndicatorCounted(); if ( counted_bars<= Param+1) { for( i=0; i<=Bars- counted_bars-1; i++) { VH[ i]=High[ i]; VL[ i]=Low[ i]; num++; Print("Start ", num); } return(0); } i=-5; if( counted_bars> Param+1) i=Bars- counted_bars-1; while( i>=0) { num1++; Print("Main ", num1 ); VH[ i]=High[ i]*1.01; VL[ i]=Low[ i]*0.99; i--; } return(0); } Victor Nikolaev 2009.07.14 09:21 #1428 Andrej78 писал(а)>> 我找到了打印功能,但现在我有另一个问题:指标输出是如何工作的? 图表上有512条。理论上,代码应该在1-14条上打印开始和条数,然后在其他条上打印主条和条数,但由于某些原因,只有开始被打印到最后和295条。请告知问题出在哪里。 检查你的日志。 [Deleted] 2009.07.14 09:31 #1429 Vinin писал(а)>> 你需要在日志中查看 >> 你怎么看日志的? [Deleted] 2009.07.14 11:45 #1430 你能不能帮我把它圈起来,它不工作了。焕然一新的外观就够了吗?提前感谢您的帮助。代码中的描述。 附加的文件: proba9.mq4 3 kb 1...136137138139140141142143144145146147148149150...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你去吧。
下一步。
谢谢你!
先生们(同志们:))。
我试图以箭头形式实现一个MAMy指标(它在kodobase中)。
我正试图以箭头形式实现MAMy指标(它在kodobase中)。
箭头画在未形成的柱子上,如果到了形成的时候,条件发生了变化--箭头不会被删除,只有在重新启动指标时才能被删除。
我想让箭头只画在已成型的柱子上。如果你有时间--给我上一堂实践课--纠正这个混乱的代码......。
(很有可能你会发现一些多余的东西--对不起(要从头写一个指标--我的手不是从那里长出来的--虽然它们是金色的),我还是在使用别人的工件)。
提前感谢。
非常感谢您!
这正是医生吩咐的!
因为从账户历史来看,在图表上。
它看起来不是很好。
请你告诉我,如果没有调试器,也许有一个按键等待和一个对话输出函数或类似的东西,mql如何模拟调试器(以变量的当前值一步一步地观察算法)?
我找到了打印 功能,但现在我有另一个问题:指标输出是如何工作的?
图表上有512条。理论上,代码应该在1-14条上打印起点和条数,然后在其他条上打印主线和条数,但由于某些原因,它只打印了一路的起点和295条。你能告诉我什么是错的吗?
我找到了打印功能,但现在我有另一个问题:指标输出是如何工作的?
图表上有512条。理论上,代码应该在1-14条上打印开始和条数,然后在其他条上打印主条和条数,但由于某些原因,只有开始被打印到最后和295条。请告知问题出在哪里。
检查你的日志。
你需要在日志中查看
>> 你怎么看日志的?