Hello, I am back to this problem. To do it more understandable I repeated today the following:
1. Installed on clean PC "Eclipse for JAVA developers"
2. then latest JForex-SDK version 2.7.5,
3. imported JForex-SDK using instructions on Wiki-page for Eclipse,
4. then changed login name and password in "Main.java" to mine following instructions on Wiki-Page.
After it I started "Main.java" from Eclipse with "Run As 1 Java Application". All looks fine, I am logged in. Since "MA_Play.java" strategy from JForex-SDK examples is started from "Main.java", then no trading orders submitted immediately. I terminated this java application in Eclipse.
5. To try with submitting orders, I comment out in "MA-Play.java" the line Nr. 68
"if (diff > 1) {"
and put instead
"if (3 > 1) { "
so the condition is always true, therefore next line
"engine.submitOrder(getLabel(instrument), instrument, IEngine.OrderCommand.BUY, 0.001, 0, 0, tick.getBid()
- instrument.getPipValue() * 10, tick.getBid() + instrument.getPipValue() * 15);"
must be called immediately.
When I start application "Main.java" with slightly changed "MA_Play.java" now, the application gets terminated and I get following messages"
-------------------------------------------------------
2012-11-27 14:02:28.840 INFO Main - Connecting...
2012-11-27 14:02:29.918 INFO AuthorizationClient - >> [https://www1.dukascopy.com/authorization/demo/auth?typus=0&munus=api&platform=JFOREXSDK&appello=DEMO3xxxx&specialis=1F8A14F9E0AC134633B3A5CFFCA87ECB930DD846&versio=206&sermo=c6418bff-575a-44e6-a32c-c77f8c413b23&willPing=true]
2012-11-27 14:02:30.374 INFO AuthorizationClient - << [d-ja-gva-61-167.dukascopy.com:[email protected]:[email protected]:[email protected]:10443@73ccad24bc36f56f8b9e6f31be9a3b392e0cec1bed90807e743c42e9542321a6]
2012-11-27 14:02:30.967 INFO AuthorizationClient - Best api url [d-ja-gva-61-167.dukascopy.com:10443] with time [62]
2012-11-27 14:02:30.967 INFO AuthorizationClient - >> [{}]https://www1.dukascopy.com/authorization/demo/auth?typus=0&munus=stngs&appello=DEMO3xxxx&licentio=73ccad24bc36f56f8b9e6f31be9a3b392e0cec1bed90807e743c42e9542321a6&sermo=c6418bff-575a-44e6-a32c-c77f8c413b23&stngs=1
2012-11-27 14:02:31.610 INFO AuthorizationClient - << [{}] Properties received
2012-11-27 14:02:33.089 WARN WLabelData - White Label Image is not received
2012-11-27 14:02:33.795 INFO Main - Connected
2012-11-27 14:02:34.089 INFO Main - Subscribing instruments...
2012-11-27 14:02:39.093 INFO Main - Starting strategy
Strategy "MA_Play" is started at 2012-11-27 13:02:39.278 GMT on the local computer with no parameters
Started
2012-11-27 14:02:39.319 INFO Main - Strategy started: 41
java.lang.ClassNotFoundException: com.dukascopy.converter.helpers.ITypeConversionExpressions @ singlejartest.MA_Play.onTick(MA_Play.java:70)
com/dukascopy/converter/helpers/ITypeConversionExpressions: java.lang.NoClassDefFoundError: com/dukascopy/converter/helpers/ITypeConversionExpressions
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.dukascopy.api.impl.connect.JForexTaskManager.getStrategyType(JForexTaskManager.java:907)
at com.dukascopy.api.impl.connect.JForexAPI.setManagerData(JForexAPI.java:422)
at com.dukascopy.api.impl.connect.JForexAPI.createOpeningOrder(JForexAPI.java:407)
at com.dukascopy.api.impl.connect.JForexAPI.submitOrder(JForexAPI.java:273)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:248)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:270)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:274)
at singlejartest.MA_Play.onTick(MA_Play.java:70)
at com.dukascopy.api.impl.execution.TaskTick.postData(TaskTick.java:67)
at com.dukascopy.api.impl.execution.AbstractPostDataTask.call(AbstractPostDataTask.java:43)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.runTask(ScienceThreadPoolExecutor.java:904)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.run(ScienceThreadPoolExecutor.java:926)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.dukascopy.converter.helpers.ITypeConversionExpressions
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 39 more
2012-11-27 14:02:42.165 ERROR TaskTick - com/dukascopy/converter/helpers/ITypeConversionExpressions
java.lang.NoClassDefFoundError: com/dukascopy/converter/helpers/ITypeConversionExpressions
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.dukascopy.api.impl.connect.JForexTaskManager.getStrategyType(JForexTaskManager.java:907)
at com.dukascopy.api.impl.connect.JForexAPI.setManagerData(JForexAPI.java:422)
at com.dukascopy.api.impl.connect.JForexAPI.createOpeningOrder(JForexAPI.java:407)
at com.dukascopy.api.impl.connect.JForexAPI.submitOrder(JForexAPI.java:273)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:248)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:270)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:274)
at singlejartest.MA_Play.onTick(MA_Play.java:70)
at com.dukascopy.api.impl.execution.TaskTick.postData(TaskTick.java:67)
at com.dukascopy.api.impl.execution.AbstractPostDataTask.call(AbstractPostDataTask.java:43)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.runTask(ScienceThreadPoolExecutor.java:904)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.run(ScienceThreadPoolExecutor.java:926)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.dukascopy.converter.helpers.ITypeConversionExpressions
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 39 more
2012-11-27 14:02:42.168 ERROR DCClientImpl$DefaultStrategyExceptionHandler - Exception thrown while running onTick method: com/dukascopy/converter/helpers/ITypeConversionExpressions
java.lang.NoClassDefFoundError: com/dukascopy/converter/helpers/ITypeConversionExpressions
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.dukascopy.api.impl.connect.JForexTaskManager.getStrategyType(JForexTaskManager.java:907)
at com.dukascopy.api.impl.connect.JForexAPI.setManagerData(JForexAPI.java:422)
at com.dukascopy.api.impl.connect.JForexAPI.createOpeningOrder(JForexAPI.java:407)
at com.dukascopy.api.impl.connect.JForexAPI.submitOrder(JForexAPI.java:273)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:248)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:270)
at com.dukascopy.api.impl.connect.JForexEngineImpl.submitOrder(JForexEngineImpl.java:274)
at singlejartest.MA_Play.onTick(MA_Play.java:70)
at com.dukascopy.api.impl.execution.TaskTick.postData(TaskTick.java:67)
at com.dukascopy.api.impl.execution.AbstractPostDataTask.call(AbstractPostDataTask.java:43)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.runTask(ScienceThreadPoolExecutor.java:904)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.run(ScienceThreadPoolExecutor.java:926)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.dukascopy.converter.helpers.ITypeConversionExpressions
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 39 more
Stopping "MA_Play" strategy at 2012-11-27 13:02:42.170 GMT on the local computer
2012-11-27 14:02:42.175 ERROR StrategyProcessor - state is CREATED
com.dukascopy.api.JFException: state is CREATED
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:393)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:398)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:402)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:406)
at singlejartest.MA_Play.onStop(MA_Play.java:50)
at com.dukascopy.api.impl.execution.TaskStop.call(TaskStop.java:28)
at com.dukascopy.api.impl.connect.StrategyProcessor.onStop(StrategyProcessor.java:169)
at com.dukascopy.api.impl.connect.JForexTaskManager$StopCallable.call(JForexTaskManager.java:1188)
at com.dukascopy.api.impl.execution.TaskCustom.call(TaskCustom.java:34)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.runTask(ScienceThreadPoolExecutor.java:904)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.run(ScienceThreadPoolExecutor.java:926)
at java.lang.Thread.run(Unknown Source)
2012-11-27 14:02:42.176 INFO Main - Strategy stopped: 41
com.dukascopy.api.JFException: state is CREATED @ singlejartest.MA_Play.onStop(MA_Play.java:50)
state is CREATED: com.dukascopy.api.JFException: state is CREATED
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:393)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:398)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:402)
at com.dukascopy.api.impl.connect.PlatformOrderImpl.close(PlatformOrderImpl.java:406)
at singlejartest.MA_Play.onStop(MA_Play.java:50)
at com.dukascopy.api.impl.execution.TaskStop.call(TaskStop.java:28)
at com.dukascopy.api.impl.connect.StrategyProcessor.onStop(StrategyProcessor.java:169)
at com.dukascopy.api.impl.connect.JForexTaskManager$StopCallable.call(JForexTaskManager.java:1188)
at com.dukascopy.api.impl.execution.TaskCustom.call(TaskCustom.java:34)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.runTask(ScienceThreadPoolExecutor.java:904)
at com.dukascopy.api.impl.execution.ScienceThreadPoolExecutor$Worker.run(ScienceThreadPoolExecutor.java:926)
at java.lang.Thread.run(Unknown Source)
----------------------------------------------------
To make it clear: I just take example from JForex-SDK and change it a bit. I use libs which are attached automatically when I import JForex-SDK and nothing else.
So everything must work, since these examples are from your side. I provide you also with both files (Main.java and MA_Play.java ). If I do something wrong please tell me.
This is quite strange problem what stops me to open a live account with Dukascopy immediately.
Thanks a lot in advance,
MikeD