编码帮助 - 页 301 1...294295296297298299300301302303304305306307308...786 新评论 Mladen Rakic 2014.07.01 14:11 #3001 sunshineh: 你好。我正在使用文件函数,它们工作得很好! 我正在使用相当大的文件,而且我正在使用一个for-loop。 在每个循环中,我读取文件中的一行。因此,有时我想改变其中一行中的一个字。 有什么简单的方法可以做到这一点吗?如果我关闭读取的文件并打开它进行写入,那么我的文件指针就会指向文件的末端。 但是否有可能获得实际的文件指针位置?这样我也可以直接写,比如写在文件的中间。 如果行的大小不固定,就没有简单的方法(那么你必须重写整个文件)。 如果行数是固定的,使用FileSeek(fileHandle,lineSize*(numberOfLin-1),SEEK_SET);然后将修改写入该特定行。 carbonmimetic 2014.07.02 07:10 #3002 对不起,如果我重复我的信息......但它对我很重要....,我需要代码的例子。 嗨,Mladen。 我想要一个小指标,在5分钟的时间框架内,当股票5-3-3在15分钟的时间框架内低于20时,显示我。 我不想要stoc multitimeframe....,而是在较低的时间框架上显示较高时间框架的信号。 谢谢你 nevar 2014.07.02 09:53 #3003 嗨,Mladen, 我想把 非滞后马的nrp值导出 到CSV文件。红色(番茄)应该是负值,蓝色应该是正值? Mladen Rakic 2014.07.02 10:30 #3004 nevar: 你好,Mladen,我想把非滞后指数nrp值导出到CSV文件,红色(番茄色)应该是负值,蓝色应该是正值? 涅瓦 这里有一个这样的脚本:export_nonlag_ma_data.mq4 你还需要在指标文件夹中找到这个帖子中的 "NonLag ma nrp nmc":https://www.mql5.com/en/forum/general 附加的文件: export_nonlag_ma_data.mq4 2 kb AZRUL FYZEE AZMI 2014.07.02 11:10 #3005 mladen: AZRUL你没有在第180行提供你想要寻找的值(这一行: int ranking = rank()。 所以rank函数不能与任何值进行比较。你的调用必须采用以下形式。 int ranking = rank(someValueToRank); 亲爱的MLADEN先生。 我曾试图从我的指标中获得总输出的排名,以便按升序排列进行排名,但未能做到。我只得到了2个输出,其中只有一个是正确的。(我想是的......),其余的(5个)是(0)零......。 我已经尝试了我能想到的所有方法,但对于如何产生一个代码将它们按顺序排列,我已经没有想法了,无论是升序还是降序都可以....,请您帮助我们.........。 您的时间和专业知识总是令人感激和需要的....... 您真正的 AZRUL... 附加的文件: ranking.jpg 58 kb consoletrendall-test_1.mq4 26 kb Mladen Rakic 2014.07.02 11:14 #3006 12BPRO: 亲爱的MLADEN先生。我曾试图从我的指标中获得总输出的排名,以便按升序排列,但未能做到这一点......我只得到2个输出,其中只有一个是正确的。(我想是的......),其余的(5个)是(0)零......。 我已经试过了所有我能想到的方法,但我已经没有办法了,不知道如何制作一个代码来对它们进行排序,无论是升序还是降序都可以....,请您帮助我们.........。 您的时间和专业知识总是令人感激和需要的....... 您真正的 AZRUL... 12BPRO 我想我已经告诉过你:你必须做一个二维的排名/排序(因为你想显示的每个部分都有一个值+符号名称),只对值进行排序是不够的,因为这样你就失去了符号名称,你必须自己做一个排序程序,当值被移到相应位置时,符号名称也会被移到相应位置。 AZRUL FYZEE AZMI 2014.07.02 12:56 #3007 mladen: 12BPRO 我想我已经告诉过你:你必须做一个二维的排名/排序(因为你在每个部分都有一个值+符号名称,你想显示),只对值进行排序是不够的,因为这样你就失去了符号名称,你必须自己做一个排序程序,当值被移到相应的位置时,符号名称也会被移到相应的位置。 亲爱的MLADEN先生。 我试过这段代码,加入了排序程序,它显示了一些值......不幸的是,它似乎漏掉了最后一个数组值(TOTCAD)......你能不能看一下? 我很抱歉,我不是一个程序员,.... 不太明白......我亲爱的GURU.....我正在尽我所能学习这个...... 您的时间和专业知识总是令人感激和需要的....... 您真正的 AZRUL... 附加的文件: ranking_1.jpg 65 kb consoletrendall-test2.mq4 25 kb Mladen Rakic 2014.07.02 13:17 #3008 12BPRO: 亲爱的MLADEN先生。我试过这段代码,加入了排序程序,它显示了一些值......不幸的是,它似乎漏掉了最后一个数组值(TOTCAD)......你能不能看一下? 我很抱歉,我不是一个程序员,.... 不太明白......我亲爱的GURU.....我正在尽我所能学习这个...... 您的时间和专业知识总是令人感激和需要的....... 您真诚的 AZRUL... AZRUL 这里有一个排序例程,对2维数组进行排序。 //------------------------------------------------------------------ // //------------------------------------------------------------------ // // // // 2 dimenzional array shell sort // // // double PR[][2]; void SortIt() { int size ArrayRange(PR,0); int i,j,increment = size / 2; double temp,temi; // // // // // while (increment > 0) { for (i = increment; i < size; i++) { j = i; temp = PR; temi = PR; while ((j >= increment) && (PR[j-increment,0] < temp)) { PR[j,0] = PR[j-increment,0]; PR[j,1] = PR[j-increment,1]; j = j-increment; } PR[j,0] = temp; PR[j,1] = temi; } if (increment == 2) increment = 1; else increment = (increment / 2.2); } } 在PR数组中填入vlues和某种符号的标记(例如PR[0,0]=eur的值,PR[0,1]=1(这将意味着1是EUR的标记)。调用SortIt()程序,读取数值和它们对应的符号标记(例如,你会得到PR[5,1]==1(1表示欧元),这将意味着数值PR[4,0]是欧元的数值) Coding help Code snippets Metatrader known bugs ... AZRUL FYZEE AZMI 2014.07.02 14:15 #3009 mladen: AZRUL这里有一个对二维数组进行排序的程序。 //------------------------------------------------------------------ // //------------------------------------------------------------------ // // // // 2 dimenzional array shell sort // // // double PR[][2]; void SortIt() { int size ArrayRange(PR,0); int i,j,increment = size / 2; double temp,temi; // // // // // while (increment > 0) { for (i = increment; i < size; i++) { j = i; temp = PR; temi = PR; while ((j >= increment) && (PR[j-increment,0] < temp)) { PR[j,0] = PR[j-increment,0]; PR[j,1] = PR[j-increment,1]; j = j-increment; } PR[j,0] = temp; PR[j,1] = temi; } if (increment == 2) increment = 1; else increment = (increment / 2.2); } } 在PR数组中填入价值和某种符号的标记(例如PR[0,0]=欧元的价值,PR[0,1]=1(这将意味着1是欧元的标记)。调用SortIt()程序,读取数值和相应的符号标记(例如,你会得到PR[5,1]==1(1表示欧元),这意味着数值PR[4,0]是欧元的数值)。 亲爱的MLADEN先生。 非常感谢你,亲爱的SIR(GURU).... 你是我的英雄和....第6个信用... 我非常喜欢这个论坛....,感谢这里的大师们....。 这对其他人也是有益的.... 谢谢你,先生.... 您真正的 AZRUL... ryuma 2014.07.02 16:43 #3010 mladen, mrtool...need help to modify/add color changing rule by 2 moving averange (MA period 8 n MA period 24).如果MA8 > MA24, histo color=green. 如果MA8 < MA24, histo color=red. 这里是指标链接:https://www.mql5.com/en/code/download/7992/BW_MFI.mq4 仍然在等待......我已经自己试过了(在发布这个请求之前),但没有好的结果,需要更多的缓冲区吗? 或者因为我不是编码员/缺乏编码技巧。只想知道是否有可能将BW MFI与另一个独立的MFI结合起来。 1...294295296297298299300301302303304305306307308...786 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你好。
我正在使用文件函数,它们工作得很好!
我正在使用相当大的文件,而且我正在使用一个for-loop。
在每个循环中,我读取文件中的一行。因此,有时我想改变其中一行中的一个字。
有什么简单的方法可以做到这一点吗?如果我关闭读取的文件并打开它进行写入,那么我的文件指针就会指向文件的末端。
但是否有可能获得实际的文件指针位置?这样我也可以直接写,比如写在文件的中间。如果行的大小不固定,就没有简单的方法(那么你必须重写整个文件)。
如果行数是固定的,使用FileSeek(fileHandle,lineSize*(numberOfLin-1),SEEK_SET);然后将修改写入该特定行。
对不起,如果我重复我的信息......但它对我很重要....,我需要代码的例子。
嗨,Mladen。
我想要一个小指标,在5分钟的时间框架内,当股票5-3-3在15分钟的时间框架内低于20时,显示我。
我不想要stoc multitimeframe....,而是在较低的时间框架上显示较高时间框架的信号。
谢谢你
嗨,Mladen,
我想把 非滞后马的nrp值导出 到CSV文件。红色(番茄)应该是负值,蓝色应该是正值?
你好,Mladen,我想把非滞后指数nrp值导出到CSV文件,红色(番茄色)应该是负值,蓝色应该是正值?
涅瓦
这里有一个这样的脚本:export_nonlag_ma_data.mq4
你还需要在指标文件夹中找到这个帖子中的 "NonLag ma nrp nmc":https://www.mql5.com/en/forum/general
AZRUL
你没有在第180行提供你想要寻找的值(这一行:
int ranking = rank()。
所以rank函数不能与任何值进行比较。你的调用必须采用以下形式。
int ranking = rank(someValueToRank);亲爱的MLADEN先生。
我曾试图从我的指标中获得总输出的排名,以便按升序排列进行排名,但未能做到。我只得到了2个输出,其中只有一个是正确的。(我想是的......),其余的(5个)是(0)零......。![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
我已经尝试了我能想到的所有方法,但对于如何产生一个代码将它们按顺序排列,我已经没有想法了,无论是升序还是降序都可以....,请您帮助我们.........。
您的时间和专业知识总是令人感激和需要的.......![](https://c.mql5.com/forextsd/smiles/angel_smile.png)
您真正的
AZRUL...
亲爱的MLADEN先生。
我曾试图从我的指标中获得总输出的排名,以便按升序排列,但未能做到这一点......我只得到2个输出,其中只有一个是正确的。(我想是的......),其余的(5个)是(0)零......。![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
我已经试过了所有我能想到的方法,但我已经没有办法了,不知道如何制作一个代码来对它们进行排序,无论是升序还是降序都可以....,请您帮助我们.........。
您的时间和专业知识总是令人感激和需要的.......![](https://c.mql5.com/forextsd/smiles/angel_smile.png)
您真正的
AZRUL...12BPRO
我想我已经告诉过你:你必须做一个二维的排名/排序(因为你想显示的每个部分都有一个值+符号名称),只对值进行排序是不够的,因为这样你就失去了符号名称,你必须自己做一个排序程序,当值被移到相应位置时,符号名称也会被移到相应位置。
12BPRO 我想我已经告诉过你:你必须做一个二维的排名/排序(因为你在每个部分都有一个值+符号名称,你想显示),只对值进行排序是不够的,因为这样你就失去了符号名称,你必须自己做一个排序程序,当值被移到相应的位置时,符号名称也会被移到相应的位置。
亲爱的MLADEN先生。
我试过这段代码,加入了排序程序,它显示了一些值......不幸的是,它似乎漏掉了最后一个数组值(TOTCAD)......你能不能看一下?
我很抱歉,我不是一个程序员,.... 不太明白......我亲爱的GURU.....我正在尽我所能学习这个......
您的时间和专业知识总是令人感激和需要的.......
您真正的
AZRUL...
亲爱的MLADEN先生。
我试过这段代码,加入了排序程序,它显示了一些值......不幸的是,它似乎漏掉了最后一个数组值(TOTCAD)......你能不能看一下?
我很抱歉,我不是一个程序员,.... 不太明白......我亲爱的GURU.....我正在尽我所能学习这个......
您的时间和专业知识总是令人感激和需要的.......
您真诚的
AZRUL...AZRUL
这里有一个排序例程,对2维数组进行排序。
//
//------------------------------------------------------------------
//
//
//
// 2 dimenzional array shell sort
//
//
//
double PR[][2];
void SortIt()
{
int size ArrayRange(PR,0);
int i,j,increment = size / 2;
double temp,temi;
//
//
//
//
//
while (increment > 0)
{
for (i = increment; i < size; i++)
{
j = i;
temp = PR;
temi = PR;
while ((j >= increment) && (PR[j-increment,0] < temp))
{
PR[j,0] = PR[j-increment,0];
PR[j,1] = PR[j-increment,1];
j = j-increment;
}
PR[j,0] = temp;
PR[j,1] = temi;
}
if (increment == 2) increment = 1;
else increment = (increment / 2.2);
}
}在PR数组中填入vlues和某种符号的标记(例如PR[0,0]=eur的值,PR[0,1]=1(这将意味着1是EUR的标记)。调用SortIt()程序,读取数值和它们对应的符号标记(例如,你会得到PR[5,1]==1(1表示欧元),这将意味着数值PR[4,0]是欧元的数值)
AZRUL
这里有一个对二维数组进行排序的程序。
//
//------------------------------------------------------------------
//
//
//
// 2 dimenzional array shell sort
//
//
//
double PR[][2];
void SortIt()
{
int size ArrayRange(PR,0);
int i,j,increment = size / 2;
double temp,temi;
//
//
//
//
//
while (increment > 0)
{
for (i = increment; i < size; i++)
{
j = i;
temp = PR;
temi = PR;
while ((j >= increment) && (PR[j-increment,0] < temp))
{
PR[j,0] = PR[j-increment,0];
PR[j,1] = PR[j-increment,1];
j = j-increment;
}
PR[j,0] = temp;
PR[j,1] = temi;
}
if (increment == 2) increment = 1;
else increment = (increment / 2.2);
}
}亲爱的MLADEN先生。
非常感谢你,亲爱的SIR(GURU).... 你是我的英雄和
....第6个信用...
我非常喜欢这个论坛....,感谢这里的大师们....。
这对其他人也是有益的....
谢谢你,先生....
您真正的
AZRUL...
need help to modify/add color changing rule by 2 moving averange (MA period 8 n MA period 24).
如果MA8 > MA24, histo color=green.
如果MA8 < MA24, histo color=red.
这里是指标链接:https://www.mql5.com/en/code/download/7992/BW_MFI.mq4仍然在等待......我已经自己试过了(在发布这个请求之前),但没有好的结果,需要更多的缓冲区吗? 或者因为我不是编码员/缺乏编码技巧。只想知道是否有可能将BW MFI与另一个独立的MFI结合起来。