Bir şeyi merak ediyorum - sipariş verilmediyse, muhtemelen bir tür hata var mı? Ve onu okumak ve düzeltmek için çıktısını almak, görünüşe göre kaderiniz değil mi?
/*sıfır alma ve durdurma ile bir sipariş verin ve ardından düzenleyin, UMC yürütme türünü tanıttılar */
Bir şeyi merak ediyorum - sipariş verilmediyse, muhtemelen bir tür hata var mı? Ve onu okumak ve düzeltmek için çıktısını almak, görünüşe göre kaderiniz değil mi?
/*sıfır alma ve durdurma ile bir sipariş verin ve ardından düzenleyin, UMC yürütme türünü tanıttılar */
bu sadece saf günlüğe giren nokta!
" UMC yürütme türünü tanıtan onlardı * / " - lütfen sorunun duraklarda olup olmadığını deşifre edin - bu öngörülemeyen bir olay için bir sigorta seçeneği olarak benim
" UMC yürütme türünü tanıtan onlardı * / " - lütfen sorunun duraklarda olup olmadığını deşifre edin - bu öngörülemeyen bir olay için bir sigorta seçeneği olarak benim
Durmadan ve almadan sipariş verin ve açılıp açılmadığını görün!
DC'nizi bu tür ticaret hesabında durdurmak ve almak SADECE önceden ayarlanmış sıfır değerlerini değiştirerek mümkündür.
İyi günler... FileIsEnding ve FileIsLineEnding işlevleriyle ilgili soru. FileIsEnding ve FileIsLineEnding işlevlerinin nasıl çalıştığını anlamak için aşağıdaki betiği yazdım:
//+------------------------------------------------------------------------------------------+//+------------------------------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------------------------------+#property show_inputs //выводим перед запуском скрипта окно свойствexternint position= 0 ; //внешняя переменная: смещение файлового указателя ОТ НАЧАЛА ФАЙЛА (в БАЙТАХ)//---------------------------------------------------------------------------------------- 1 -int start() //функция start
{ //начало startdouble Timestart= GetTickCount (); //переменная, с помощью которой вычисляется время (в милисекундах) начала выполнения эксперта string name= "Копия Запись чисел в файл.csv" ; //имя создаваемого файлаbool h; //переменная: значение функции FileIsEndingbool h_l; //переменная: значение функции FileIsLineEndingint error; //переменная: ошибкаint handle= FileOpen (name, FILE_CSV | FILE_WRITE , ';' ); //открываем заданный файл n записываем туда данныеint запись= FileWrite (handle, DoubleToStr ( 1.3584 , 4 )); //записываем цены OHLC в файл csv (в преобразованном виде, т.е в виде текста)FileClose (handle); //закрываем файл//---------------------------------------------------------------------------------------- 2 -
handle= FileOpen (name, FILE_CSV | FILE_READ , ';' ); //открываем заданный файлbool pos= FileSeek (handle,position, SEEK_SET ); //смещаем от начала вправо указатель файлаdouble чтение= FileReadNumber (handle); //считываем число из текущей позиции (уже измененной функцией FileSeek) файлового указателяint size= FileSize (handle); //вычисляем размер заданного файла
h= FileIsEnding (handle); //устанавливаем текущее значение переменной h
h_l= FileIsLineEnding (handle); //устанавливаем текущее значение переменной h_l
error= GetLastError (); //значение ошибки, производимой функцией FileIsEndingif (error!= 0 ) Alert ( "Текущая ошибка " ,error); //если код текущей ошибки не равен 0, то получаем номер текущей ошибкиFileClose (handle); //закрываем файл//----------------------------------------------------------------------------------------- 3 -Comment ( "Размер файла " ,name, " составил " ,size, " байт" ,
"\nФункция FileSeek вернула: " ,pos,
"\nФункция FileReadNumber(handle) вернула: " ,чтение,
"\nФункция FileIsLineEnding(handle) вернула: " ,h_l,
"\nФункция FileIsEnding(handle) вернула: " ,h,
"\nСкрипт выполнялся всего " , GetTickCount ()-Timestart, " миллисекунд, из них: " , MathFloor (( GetTickCount ()-Timestart)/ 1000 ), " секунд " ,(( GetTickCount ()-Timestart)/ 1000 - MathFloor (( GetTickCount ()-Timestart)/ 1000 ))* 1000 , " миллисекунд" ); //печать сообщения на экран//----------------------------------------------------------------------------------------- 4 -return ( 0 ); //выход из start
} //конец start//-------------------------------------- КОНЕЦ START -------------------------------------- 5 -
Blok 3-4 Dosyayı açtım ve orada yazan numarayı okudum.
Harici değişken extern int konumu, FileTell işlevini kullanarak dosya işaretçisini hareket ettirerek FileIsEnding ve FileIsLineEnding işlevlerinin nasıl çalıştığını ve bir dosya işaretçisinin ne olduğunu anlamaya çalışmak için tasarlanmıştır.
MQL4.community'de bulunan MQL4 hakkındaki kitap, bir dosya işaretçisinin bir metin imlecine benzer olduğunu söylüyor.
AMA, bu betiği birkaç kez çalıştırarak ve her seferinde harici değişken postiton'u 1 değiştirerek (yani, dosya işaretçisini dosyanın başlangıcından itibaren 1 bayt sağa kaydırarak) Yorum işlevi bir dizi mesaj görüntüledi. misal:
postiton=7 ise, mesaj şuna benziyordu:
postiton=8 ise, mesaj şuna benziyordu:
anladım çünkü PC belleğinde, dize sabitleri 8 bayt alır ve dosyaya metne dönüştürülen yalnızca 1 sayı yazılır, ardından dosya işaretçisini 8 bayt sağa kaydırırsam 4099 hatası alıyorum (bu, dosyanın sonuna ulaşıldığı anlamına gelir) ). Ayrıca FileIsEnding işlevinin aynı nedenle (dosya sonuna ulaşıldı) 1 (true) döndürdüğünü anlıyorum. Ancak FileIsLineEnding işlevinin neden 0 döndürdüğünü anlamıyorum (yanlış, yani dosya işaretçisi satırın sonuna ulaşmadı). Ne de olsa, MQL kitabında verilen analojinin rehberliğinde (bir dosya işaretçisi yaklaşık olarak bir metin imleciyle aynıdır), dosyanın sonunun aynı zamanda satırın sonu olduğunu düşündüm. Ancak dosya işaretçisi dosyanın sonuna geldiğinde FileIsEnding ve FileIsLineEnding fonksiyonlarının değerleri arasındaki tutarsızlık göz önüne alındığında, DOSYA NOKTASI NEDİR konusunda çıkmaza girdim.
Soru:
1. Dosya işaretçisi nedir?
2. Neden eşleşmez: satırın sonu ve dosyanın sonu (dosya işaretçisi dosyanın sonuna ulaştığında)?
Not: Forumu kirletmemek adına şimdiden cevap için teşekkürler
2. Neden eşleşmez: satırın sonu ve dosyanın sonu (dosya işaretçisi dosyanın sonuna ulaştığında)?
Not: Forumu kirletmemek adına şimdiden cevap için teşekkürler
1. dosya işaretçisi - yazarken aslında bir imleç
2. Size eşleşmeleri gerektiğini kim söyledi? satır sonu karakteri '\n' var, dosya sonu karakteri 'EOF' var bunlar farklı karakterler. Cümle sonu karakteri (nokta) ve paragraf sonu karakteri ("satır sonu karakteri") gibidir. Önce bir nokta gelir - satırın sonu. Sonra paragrafın sonu.
Bir şeyi merak ediyorum - sipariş verilmediyse, muhtemelen bir tür hata var mı? Ve onu okumak ve düzeltmek için çıktısını almak, görünüşe göre kaderiniz değil mi?
/*sıfır alma ve durdurma ile bir sipariş verin ve ardından düzenleyin, UMC yürütme türünü tanıttılar */
Bir şeyi merak ediyorum - sipariş verilmediyse, muhtemelen bir tür hata var mı? Ve onu okumak ve düzeltmek için çıktısını almak, görünüşe göre kaderiniz değil mi?
/*sıfır alma ve durdurma ile bir sipariş verin ve ardından düzenleyin, UMC yürütme türünü tanıttılar */
bu sadece saf günlüğe giren nokta!
" UMC yürütme türünü tanıtan onlardı * / " - lütfen sorunun duraklarda olup olmadığını deşifre edin - bu öngörülemeyen bir olay için bir sigorta seçeneği olarak benim
bu sadece saf günlüğe giren nokta!
" UMC yürütme türünü tanıtan onlardı * / " - lütfen sorunun duraklarda olup olmadığını deşifre edin - bu öngörülemeyen bir olay için bir sigorta seçeneği olarak benim
Durmadan ve almadan sipariş verin ve açılıp açılmadığını görün!
DC'nizi bu tür ticaret hesabında durdurmak ve almak SADECE önceden ayarlanmış sıfır değerlerini değiştirerek mümkündür.
Durmadan ve almadan sipariş verin ve açılıp açılmadığını görün!
DC'nizi bu tür ticaret hesabında durdurmak ve almak SADECE önceden ayarlanmış sıfır değerlerini değiştirerek mümkündür.
Teşekkürler, yardımcı oldu.
0'dan bir hesap açmanız ve ardından durakları tanıtarak değişiklik yapmanız gerektiği ortaya çıktı?
Teşekkürler, yardımcı oldu.
0'dan bir hesap açmanız ve ardından durakları tanıtarak değişiklik yapmanız gerektiği ortaya çıktı?
bu parametrelerin sıfır değerlerine sahip bir sipariş açın, ardından açık siparişi değiştirerek değiştirin.
bu parametrelerin sıfır değerlerine sahip bir sipariş açın, ardından açık siparişi değiştirerek değiştirin.
Günlükler temizdir, çünkü hiç kimse hataları sizin için tespit edip işlemez .
Спасибо, стопы устанавливаются в точностью до символов графика, т.е. 0,00001 или с точностью до 0,0001?
MarketInfo parmaklarınızın ucunda.
Sorunuzla kimse uğraşmak istemiyor. Her ne kadar sorunuza uzun zaman önce cevap vermiş olsanız da, tabii isterseniz.
İyi günler... FileIsEnding ve FileIsLineEnding işlevleriyle ilgili soru. FileIsEnding ve FileIsLineEnding işlevlerinin nasıl çalıştığını anlamak için aşağıdaki betiği yazdım:
1-2 bloğunda, dosyayı açtım ve dosyaya (DoubleToStr işlevinin metne dönüştürdüğü) 1.3584 sayısını yazdım.
Blok 3-4 Dosyayı açtım ve orada yazan numarayı okudum.
Harici değişken extern int konumu, FileTell işlevini kullanarak dosya işaretçisini hareket ettirerek FileIsEnding ve FileIsLineEnding işlevlerinin nasıl çalıştığını ve bir dosya işaretçisinin ne olduğunu anlamaya çalışmak için tasarlanmıştır.
MQL4.community'de bulunan MQL4 hakkındaki kitap, bir dosya işaretçisinin bir metin imlecine benzer olduğunu söylüyor.
AMA, bu betiği birkaç kez çalıştırarak ve her seferinde harici değişken postiton'u 1 değiştirerek (yani, dosya işaretçisini dosyanın başlangıcından itibaren 1 bayt sağa kaydırarak) Yorum işlevi bir dizi mesaj görüntüledi. misal:
postiton=7 ise, mesaj şuna benziyordu:
postiton=8 ise, mesaj şuna benziyordu:
anladım çünkü PC belleğinde, dize sabitleri 8 bayt alır ve dosyaya metne dönüştürülen yalnızca 1 sayı yazılır, ardından dosya işaretçisini 8 bayt sağa kaydırırsam 4099 hatası alıyorum (bu, dosyanın sonuna ulaşıldığı anlamına gelir) ). Ayrıca FileIsEnding işlevinin aynı nedenle (dosya sonuna ulaşıldı) 1 (true) döndürdüğünü anlıyorum. Ancak FileIsLineEnding işlevinin neden 0 döndürdüğünü anlamıyorum (yanlış, yani dosya işaretçisi satırın sonuna ulaşmadı). Ne de olsa, MQL kitabında verilen analojinin rehberliğinde (bir dosya işaretçisi yaklaşık olarak bir metin imleciyle aynıdır), dosyanın sonunun aynı zamanda satırın sonu olduğunu düşündüm. Ancak dosya işaretçisi dosyanın sonuna geldiğinde FileIsEnding ve FileIsLineEnding fonksiyonlarının değerleri arasındaki tutarsızlık göz önüne alındığında, DOSYA NOKTASI NEDİR konusunda çıkmaza girdim.
Soru:
1. Dosya işaretçisi nedir?
2. Neden eşleşmez: satırın sonu ve dosyanın sonu (dosya işaretçisi dosyanın sonuna ulaştığında)?
Not: Forumu kirletmemek adına şimdiden cevap için teşekkürler
1. Dosya işaretçisi nedir?
2. Neden eşleşmez: satırın sonu ve dosyanın sonu (dosya işaretçisi dosyanın sonuna ulaştığında)?
Not: Forumu kirletmemek adına şimdiden cevap için teşekkürler
1. dosya işaretçisi - yazarken aslında bir imleç
2. Size eşleşmeleri gerektiğini kim söyledi? satır sonu karakteri '\n' var, dosya sonu karakteri 'EOF' var bunlar farklı karakterler. Cümle sonu karakteri (nokta) ve paragraf sonu karakteri ("satır sonu karakteri") gibidir. Önce bir nokta gelir - satırın sonu. Sonra paragrafın sonu.