int init() { Print ("Сработала ф-ия init"); // Сообщение Handle=FileOpen("Neuro",FILE_BIN|FILE_READ|FILE_WRITE);// Открытие файла на чтение и запись FileSeek(Handle, 0, SEEK_SET); //указатель на начало файла FileReadArray(Handle, ROM1); FileSeek(Handle, 131073, SEEK_SET); //указатель на конец первого массива FileReadArray(Handle, ROM2);
下午好。我不能从文件中读取数据并立即将其写回。如果我取消对带有循环和MathRand() 的代码片段的注释,文件就会变得很模糊,因为它应该是这样。但是,如果行数被注释掉了(文件中已经有了混乱),那么下次我启用/禁用专家顾问时,文件将包含零。读写数组是双ROM1[128][128]和双ROM2[3][128]。这些数组在代码的其他地方没有改变,只是被读取。这里有一段代码。
int init()
{
Print ("Сработала ф-ия init"); // Сообщение
Handle=FileOpen("Neuro",FILE_BIN|FILE_READ|FILE_WRITE);// Открытие файла на чтение и запись
FileSeek(Handle, 0, SEEK_SET); //указатель на начало файла
FileReadArray(Handle, ROM1);
FileSeek(Handle, 131073, SEEK_SET); //указатель на конец первого массива
FileReadArray(Handle, ROM2);
/*
for(i=0; i<128; i++) //заполнение памяти первого слоя кашей
{
for(k=0; k<128; k++)
{
ROM1[i][k] = (MathRand()-16383)/3200;
}
}
for(i=0; i<3; i++) //заполнение памяти второго слоя кашей
{
for(k=0; k<128; k++)
{
ROM1[i][k] = (MathRand()-16383)/3200;
}
}
*/
return(0);
}
//--------------------------------------------------------------------
int deinit()
{
FileSeek(Handle, 0, SEEK_SET);
FileWriteArray(Handle, ROM1);
FileSeek(Handle, 131073, SEEK_SET);
FileWriteArray(Handle, ROM2);
FileClose(Handle);
return(0);
}
两个相同的命令。
谢谢你。
两个相同的命令。
谢谢你。
你可以随时搜索信号,但你必须按时间开仓。
用魔法565观察开仓的时间,并观察当前的时间。如果当前时间比用magic 565开仓的时间长了指定的分钟数,那么你就可以开仓了。
你可以随时搜索信号,但你必须允许按时间开仓。
用魔法565查看开仓时间,查看当前时间。如果当前时间比Magik 565的开仓时间长了一定的分钟数,那么就可以开仓。
非常感谢你。它在代码中是什么样子的?
一点点的。该函数不会读取二维数组的双倍数,尽管它可以正确地写入。
我做了一个循环用于逐个元素的阅读。也许,它可能对某人有用。
FileSeek(Handle, n, SEEK_SET); //изменение позиции файлового курсора
Neuron[k][i].rom[l] = FileReadDouble(Handle, DOUBLE_VALUE); //загрузка из файла
n=n+8;
}
非常感谢你。它在代码中是什么样子的?
而这并不是免费的代码编写,而是帮助那些试图自己编写,但却无法得到正确结果的人。
向我们展示你的代码中无法做到的事情--我们会帮助你。
我已经解决了一些问题。二维数组double函数不想读,尽管它写得很好。
我已经进行了逐个循环的阅读。也许有人会需要它。
FileSeek(Handle, n, SEEK_SET); //изменение позиции файлового курсора
Neuron[k][i].rom[l] = FileReadDouble(Handle, DOUBLE_VALUE); //загрузка из файла
n=n+8;
}
我为什么要向人们提供这样的拐杖,只是因为我自己没有应付过这个任务?
要从文件中读取一个二维数组,应该是为其准备的二维数组。
如果我没有记错的话,我没有看到文件 在被写入后被关闭。一个空文件被创建,数据被写入其中,但这个填满的文件被存储在主内存中,文件数据只能从磁盘中读取。结果是,文件看起来已经被写入,但实际上它并不在磁盘上......。为了将数据保存到磁盘,应该关闭文件或强行将其保存到磁盘。
而这并不是免费的代码编写,而是帮助那些试图自己编写,但却无法得到正确结果的人。
向我们展示你的代码中无法做到的事情,我们会提供帮助。
谢谢
你好!请用mql4写一个简单(非常简单)的例子。我只是一个完全的初学者。
1) 当它达到任何数值时,开一个挂单(即如果价格是0.7777,那么开一个挂单)。
2) 当一个(市场)订单达到任何数值时关闭(即如果价格是0.6666,则关闭订单)。
我甚至不能用一个唯一的订单号来关闭一个订单。我想尝试改变我的交易机器人的当前状态,但我什么都不明白。
我试着看了一下这个网站的教程,但没有效果(也许是我太笨了),而且初级的例子不知为什么在网上没有。预先感谢
你好!请用mql4写一个简单(非常简单)的例子。我只是一个完全的初学者。
1) 当它达到任何数值时,开一个挂单(即如果价格是0.7777,那么开一个挂单)。
2) 当一个(市场)订单达到任何数值时关闭(即如果价格是0.6666,则关闭订单)。
我甚至不能用一个唯一的订单号来关闭一个订单。我想尝试改变我的交易机器人的当前状态,但我什么都不明白。
我试着看了一下这个网站的教程,但没有效果(也许是我太笨了),而且初级的例子不知为什么在网上没有。预先感谢
如果你有挂单的问题,在CodeBase 上找找看,看看代码是怎么写的。