Print("Çift Gönderim (olduğu gibi) ",send_test_double); Print("Çift Gönderme Testi",DoubleToStrMorePrecision(send_test_double,16)); Print("Çifte Alındı (olduğu gibi) ",alınan_test_double); Print("Çift Alınan Test",DoubleToStrMorePrecision(received_test_double,16)); Print("Çifte Karşılaştırma Testi",send_test_double == alınan_test_double);
Terminal günlüğünde aşağıdaki satırlar:
=======================
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderim (olduğu gibi) -8008.1235 2012.05.10 00:55:55 stdlib EURUSD,M5: başarıyla yüklendi 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderme Testi -8008.1234567891197003 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alındı (olduğu gibi) -1.#IND 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alınan Test -1.6627963145224000 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Karşılaştırma Testi 1
Umarım üzerinde bir şeyler görebilirsiniz, çünkü zaten birçok kez karşılaştırdım (belki bir şeyi gözden kaçırıyorum).
Print("Çift Gönderim (olduğu gibi) ",send_test_double); Print("Çift Gönderme Testi",DoubleToStrMorePrecision(send_test_double,16)); Print("Çifte Alındı (olduğu gibi) ",alınan_test_double); Print("Çift Alınan Test",DoubleToStrMorePrecision(received_test_double,16)); Print("Çifte Karşılaştırma Testi",send_test_double == alınan_test_double);
Terminal günlüğünde aşağıdaki satırlar:
=======================
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderim (olduğu gibi) -8008.1235 2012.05.10 00:55:55 stdlib EURUSD,M5: başarıyla yüklendi 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderme Testi -8008.1234567891197003 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alındı (olduğu gibi) -1.#IND 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alınan Test -1.6627963145224000 2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Karşılaştırma Testi 1
Umarım üzerinde bir şeyler görebilirsiniz, çünkü zaten birçok kez karşılaştırdım (belki bir şeyi gözden kaçırıyorum).
Yoksa yazılımın diğer geliştirmelerle birlikte güncellenmiş sürümlerine sahip misiniz? Şu anda dll'nin v2 sürümünü kullanıyorum.
Kodunuzu MT build 409 ile test ettim ve çalışıyor.
06:37:18 mt4jÖrnek EURUSD,H4: Çift Gönderim (olduğu gibi) -8008.1235 06:37:18 stdlib EURUSD,H4: başarıyla yüklendi 06:37:18 mt4jÖrnek EURUSD,H4: Çift Gönderme Testi -8008.1234567891197003 06:37:18 mt4jÖrnek EURUSD,H4: Çift Alındı (olduğu gibi) -8008.1235 06:37:18 mt4jÖrnek EURUSD,H4: Çift Alınan Test -8008.1234567891197003
06:37:18 mt4jÖrnek EURUSD,H4: Çift Karşılaştırma Testi 1
Yine de araştırdım ve ilginç bir ilan buldum. Kullanmakta olduğunuz sürüm (418) bazı ciddi hatalara sahip gibi görünüyor.
Anladığım kadarıyla 126 hatası, MT4'ün dll dosyasını bulamadığı anlamına geliyor. Onu doğru adıyla çağırdığınızı varsayarsak, öncelikle /experts/libraries/ klasöründe olması gerekir. Başka bir yere gidebilir ama bu senin en iyi yerin.
Bu yardımcı olur umarım.
Şerefe
Brooky
Aslında, birkaç testten ve harici forumlarda arama yaptıktan sonra, DLL bağımlılıklarından birini bulamadığında sistem tarafından Hata 126'nın yayınlandığını buldum... İşletim sisteminizde bağımlılık yok.
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j'yi denedim. özellikler ama çalışmıyor.
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j.properties'i denedim ama çalışmıyor.
Teşekkürler fakat yazımda belirttiğim gibi Eclipse'de çalıştırdığımda herhangi bir sorun yok fakat MetaTrader4'te sorun yaşıyorum. MQL4 veya MetaTrader4'ün sınıf yolunu nerede yapılandırması gerektiğinden emin değil.
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j.properties'i denedim ama çalışmıyor.
Çok teşekkürler
mt4j. özellikler , sınıf yolunu genişletmek için doğru yerdir, yani
Doğru alıcı yöntemini mi kullanıyorsunuz - getDoubleProperty(jCtx, "DoublePropertyName")?
mt4jSAmple.mq4 örneğini çift değerlerle doğruladım ve çalışıyor.
setDoubleProperty(jCtx, "DoublePropertySample", DoubleProperty);
if (DoubleProperty != getDoubleProperty(jCtx, "DoublePropertySample")) {
Alert("Çift doğru ayarlanmadı: " + getDoubleProperty(jCtx, "DoublePropertySample"));
}
Belki de kayan değerin kendisidir, kayan değer nedir?
Çevre
========
> MT4.00 yapı 418
> Java Runtime : C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
java sürümü "1.6.0_31"
Java(TM) SE Çalışma Zamanı Ortamı (derleme 1.6.0_31-b05)
Java HotSpot(TM) İstemci VM (derleme 20.6-b01, karma mod, paylaşım)
MT4 dahil:
==========
#ithalat "mt4j.dll"
double getDoubleProperty(int jctx, string özelliği );
void setDoubleProperty(int jctx, string özelliği, çift değer);
#içe aktarmakJava uygulaması:
==============
özel çift çiftÖzellikÖrneği;
public double getDoublePropertySample() {
this.doublePropertySample'ı döndür;}
public void setDoublePropertySample(double doubleProperty) {
this.doublePropertySample = doubleProperty;
}
Aşağıdaki kod çalıştırılır:
==============
çift send_test_double = -80081.12345678912;
setDoubleProperty(pid,"DoublePropertySample",send_test_double);
double alınan_test_double = getDoubleProperty(pid,"DoublePropertySample");
Print("Çift Gönderim (olduğu gibi) ",send_test_double);
Print("Çift Gönderme Testi",DoubleToStrMorePrecision(send_test_double,16));
Print("Çifte Alındı (olduğu gibi) ",alınan_test_double);
Print("Çift Alınan Test",DoubleToStrMorePrecision(received_test_double,16));
Print("Çifte Karşılaştırma Testi",send_test_double == alınan_test_double);
Terminal günlüğünde aşağıdaki satırlar:
=======================
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderim (olduğu gibi) -8008.1235
2012.05.10 00:55:55 stdlib EURUSD,M5: başarıyla yüklendi
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderme Testi -8008.1234567891197003
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alındı (olduğu gibi) -1.#IND
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alınan Test -1.6627963145224000
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Karşılaştırma Testi 1
Umarım üzerinde bir şeyler görebilirsiniz, çünkü zaten birçok kez karşılaştırdım (belki bir şeyi gözden kaçırıyorum).
Çevre
========
> MT4.00 yapı 418
> Java Runtime : C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
java sürümü "1.6.0_31"
Java(TM) SE Çalışma Zamanı Ortamı (derleme 1.6.0_31-b05)
Java HotSpot(TM) İstemci VM (derleme 20.6-b01, karma mod, paylaşım)
MT4 dahil:
==========
#ithalat "mt4j.dll"
double getDoubleProperty(int jctx, string özelliği);
void setDoubleProperty(int jctx, string özelliği, çift değer);
#içe aktarmakJava uygulaması:
==============
özel çift çiftÖzellikÖrneği;
public double getDoublePropertySample() {
this.doublePropertySample'ı döndür;}
public void setDoublePropertySample(double doubleProperty) {
this.doublePropertySample = doubleProperty;
}
Aşağıdaki kod çalıştırılır:
==============
çift send_test_double = -80081.12345678912;
setDoubleProperty(pid,"DoublePropertySample",send_test_double);
double alınan_test_double = getDoubleProperty(pid,"DoublePropertySample");
Print("Çift Gönderim (olduğu gibi) ",send_test_double);
Print("Çift Gönderme Testi",DoubleToStrMorePrecision(send_test_double,16));
Print("Çifte Alındı (olduğu gibi) ",alınan_test_double);
Print("Çift Alınan Test",DoubleToStrMorePrecision(received_test_double,16));
Print("Çifte Karşılaştırma Testi",send_test_double == alınan_test_double);
Terminal günlüğünde aşağıdaki satırlar:
=======================
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderim (olduğu gibi) -8008.1235
2012.05.10 00:55:55 stdlib EURUSD,M5: başarıyla yüklendi
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Gönderme Testi -8008.1234567891197003
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alındı (olduğu gibi) -1.#IND
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Alınan Test -1.6627963145224000
2012.05.10 00:55:55 ATT - Java EURUSD,M5: Çift Karşılaştırma Testi 1
Umarım üzerinde bir şeyler görebilirsiniz, çünkü zaten birçok kez karşılaştırdım (belki bir şeyi gözden kaçırıyorum).
Merhaba pivot noktası,
Kodunuzu MT build 409 ile test ettim ve çalışıyor.
06:37:18 mt4jÖrnek EURUSD,H4: Çift Gönderim (olduğu gibi) -8008.1235
06:37:18 stdlib EURUSD,H4: başarıyla yüklendi
06:37:18 mt4jÖrnek EURUSD,H4: Çift Gönderme Testi -8008.1234567891197003
06:37:18 mt4jÖrnek EURUSD,H4: Çift Alındı (olduğu gibi) -8008.1235
06:37:18 mt4jÖrnek EURUSD,H4: Çift Alınan Test -8008.1234567891197003
06:37:18 mt4jÖrnek EURUSD,H4: Çift Karşılaştırma Testi 1
Yine de araştırdım ve ilginç bir ilan buldum. Kullanmakta olduğunuz sürüm (418) bazı ciddi hatalara sahip gibi görünüyor.
https://www.mql5.com/en/forum/138657
Saygılarımızla,
Siberflohr
noargs void yöntemi için destek eklendi.
MT4 kodu:
// EA sınıfınızda bir noargs void yöntemini çağırır.
callNoArgsMethod(jCtx, "doSomething");
Saygılarımızla,
Siberflohr
Merhaba
Anladığım kadarıyla 126 hatası, MT4'ün dll dosyasını bulamadığı anlamına geliyor. Onu doğru adıyla çağırdığınızı varsayarsak, öncelikle /experts/libraries/ klasöründe olması gerekir. Başka bir yere gidebilir ama bu senin en iyi yerin.
Bu yardımcı olur umarım.
Şerefe
Brooky
Merhaba,
MT build 432 için aşağıdaki hatayı alıyorum
2012.06.14 00:23:24 2011.09.26 20:00 mt4jSample EURUSD,H4: 6D8860FA'da dll 'mt4j.dll' kritik hatası c0000005'ten 'addNewBar' işlevi çağrısı.
Benim için, yapının api ile sorunu var gibi görünüyor.
Daha yeni MT yapısıyla yükseltirsek aynı sorunu tekrar yaşar mıyız?
teşekkürler
Merhaba,
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j'yi denedim. özellikler ama çalışmıyor.
Çok teşekkürler
Merhaba,
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j.properties'i denedim ama çalışmıyor.
Çok teşekkürler
Bu Forum mql4 kodlama hakkındadır. . .
Merhaba,
mt4jSample.jar dosyasını yüklerken sorun yaşıyorum. SampleEA.java'ya harici jar dosyaları gerektiren birkaç kod ekledim, ancak mt4jSample.jar dosyasını yeniden paketledikten sonra sistem tanınmıyor veya harici jar dosyalarının nerede olduğunu bulamıyor gibi görünüyor.
Yeni SampleEA.java, Eclipse'de iyi çalışıyor ancak MetaTrader 4'te çalışmıyor, eğer harici jar dosyalarını çağıran ve yeniden paketlenen bu kodu kaldırırsam, mt4jSample.jar iyi çalışır.
Lütfen bana bu harici jar dosyaları için sınıf yolunu nerede tanımlamam veya ayarlamam gerektiğini söyler misiniz? mt4j.properties'i denedim ama çalışmıyor.
Çok teşekkürler
mt4j. özellikler , sınıf yolunu genişletmek için doğru yerdir, yani
jvmOption.1=-Djava.class.path=experts\libraries\mt4jSample.jar;experts\libraries\mylib.jar;c:\mylibs\mylib2.jar
Siberflohr