|
Dukascopy broker plugin for download
#447697
12/29/14 11:38
12/29/14 11:38
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi all, I really like the Zorro project and the effort you put into it. So, I would like to contribute with a broker plugin for Dukascopy. Download, installation instructions and source code can be found on the project page on GitHub. Please read the documentation carefully!As stated on the project page, this is all in beta stage so do not expect it to be bug free As of now, I could successfully connect to Dukascopy and open/close some trades. Be aware that I tested only on my developing machine, so the installation instructions might be incomplete. Please post any issues with the setup here and you should use pastebin for providing logs. This is a pure private project and I will take care of bugs in my rare sparetime :-) I wish you all a happy new year 2015! Cheers, Juergen
Last edited by ibne; 01/03/15 00:03.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ibne]
#464536
02/24/17 10:08
02/24/17 10:08
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi all, its been a while since the last release of the Dukascopy plugin, but now there is a new beta version 0.9.5 available on github. Please follow the installation instructions to get the plugin running. The plugin is tested with Zorro version 1.50.6, so make sure you have this version installed. It would be nice if someone with a Dukascopy account could report here. Thanks for testing and happy trading, Juergen
Last edited by ibne; 02/25/17 14:30.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: Dalla]
#464642
03/03/17 02:26
03/03/17 02:26
|
Joined: Feb 2017
Posts: 369
Dalla
Senior Member
|
Senior Member
Joined: Feb 2017
Posts: 369
|
I have realized that the easiest way forward would probably be to just reuse your existing bridge 😂 However I cannot find any license info in your repo, meaning that no one can reuse your work. Would you mind adding an open source license? https://help.github.com/articles/licensing-a-repository/
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: Dalla]
#464643
03/03/17 06:51
03/03/17 06:51
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ibne]
#464645
03/03/17 07:16
03/03/17 07:16
|
Joined: Feb 2017
Posts: 369
Dalla
Senior Member
|
Senior Member
Joined: Feb 2017
Posts: 369
|
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: Dalla]
#464748
03/08/17 12:10
03/08/17 12:10
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: vinsom]
#465305
04/16/17 14:24
04/16/17 14:24
|
Joined: Feb 2017
Posts: 369
Dalla
Senior Member
|
Senior Member
Joined: Feb 2017
Posts: 369
|
I'm basically done with the IG plugin already, just some final testing before I release the initial version
Last edited by Dalla; 04/16/17 14:25.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: Unsane]
#466309
06/07/17 15:39
06/07/17 15:39
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi, I just released version 0.9.6 of the plugin. You can download it here This version is compatible with Zorro 1.58 and it has many small bug fixes and performance improvements.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ibne]
#468958
10/30/17 06:54
10/30/17 06:54
|
Joined: Oct 2017
Posts: 9
debs
Newbie
|
Newbie
Joined: Oct 2017
Posts: 9
|
@ibne Yes Live account, but I allowed my VPS IP address. Normally in Jforex in this situation PIN is not required. But this is just nice to have thing Also I am facing issue with eur/usd and Z strategies on this live account: Error 033: EUR/USD missing in INITRUN Error 011: Function ATR called with invalid parameters (no price) Error 011: Function BBANDS called with invalid parameters (no price) In my trading platform there is every 30 min cancelled order with weird price like:: 30.10.2017 05:30:00 Order #396642892, Position #94329306 BUY 1,000.00 EUR / USD OpIF ask > 42 CANCELLED This is just dummy call or something wrong?? I tried almost everything with history files, and assets and z strategy config(excluding, including), but still without result only with this strange price in order .. In FXCM plugin(demo) everything works ok, so I think there must be something with dukascopy. Any idea what I am doing wrong??
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: maji]
#475861
01/10/19 17:20
01/10/19 17:20
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi, I just created an early new release and it would be great if there are some testers laugh Project/Source code is here: ProjectPage Distribution zip: PluginZip Just download the zip file and extract into your zorro installation folder. BTW: Yes, stocks and CFDs are now supported
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#475898
01/12/19 10:57
01/12/19 10:57
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Thx ags. I cannot find anythin suspicious here Seems a dukascopy problem... Meanwhile uploaded a new path with minor corrections. EDIT: Again upload a new version which prints the current usage of heap space to track possible issues. Also added more deletions on JNI references which could fix an issue with heap space. You can now also set the maximum available heap size in the Plugin.properties file. When setting it too high, the Plugin just crashes.
Last edited by ibne; 01/12/19 21:11.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#475964
01/15/19 17:53
01/15/19 17:53
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi ags,
sorry to hear it does not work. At least, does the plugin freeze again or was this fixed? I just downloaded directly from github the latest release and on my side it works. I have a live acccount with Dukascopy and DukascopyEU, both work fine. Could you please download it again, because I changed the jnlp address to see if it works for you. You can also try(as I have) create an entry in the Accounts.csv list under history folder like this: Name,Broker,Account,User,Pass,Assets,CCY,Real,NFA,Plugin,Source Dukascopy_Live,Dukascopy,0,Username,Password,AssetsFix,EUR,1,0,dukascopy.dll These are my settings and IP verification works.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#475974
01/16/19 09:10
01/16/19 09:10
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi ags, since it works on my side I can not reproduce it I have no further ideas right now, so if you want to login to live accounts you have to resort back to pin verification. for that you have to set the parameter usepin=true in the config file.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#475988
01/16/19 16:20
01/16/19 16:20
|
Joined: Oct 2018
Posts: 90 Germanien
ags
Junior Member
|
Junior Member
Joined: Oct 2018
Posts: 90
Germanien
|
Hi ibne,
found another particularity, maybe you can explain.
When i use your plugin, my M3.medium instance works almost at full cumputing power all the time. Normally between 60 and 80% of capacity and also at 99% capacity at intervals. Observed this situation last 3 days. I stated to measure because the instance was working very heavy, any other activity you start, just the Task Manager f.e., would kill the instance.
If i disconnect, change the plugin to another version and reconnect, without changin anything, then with this other plugin (also Java based and also with Dukascopy) the M3 instance works at 10 to max 15% capacity with exaclty the same script and setting, no change at all other than the plugin.
Any idea why this difference in computing power needed??
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#475993
01/16/19 17:15
01/16/19 17:15
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi ags,
I can just guess, but the current implementation triggers Zorro on every tick it receives, for any asset in the asset list. This helps in receiving "real time" ticks and you do not lose any ticks in between BrokerAsset calls. I can implement a configurable parameter were you can disable the "real time" behavior. I don't know if the other plugin implements SET_HWND, so can not tell about it. Keep you updated when done with the adaptation.
EDIT: The real problem here is with Zorro, as you can not stream incoming data directly. This would reduce the amount of work drastically.
Last edited by ibne; 01/16/19 17:17.
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ags]
#476000
01/16/19 21:45
01/16/19 21:45
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi ags, I admit I don't know what M3 order T2 is When you say PIN verification works...I assumed that this has always worked. You complaint about IP verification...does this now also work?
|
|
|
Re: Plugin and converter for Dukascopy for download
[Re: ibne]
#476007
01/17/19 11:08
01/17/19 11:08
|
Joined: Dec 2014
Posts: 56
ibne
OP
Junior Member
|
OP
Junior Member
Joined: Dec 2014
Posts: 56
|
Hi all, released new version for download here: PluginZip Several bugs were fixed(thx ags!) and new broker commands added.
|
|
|
Re: Dukascopy broker plugin for download
[Re: ibne]
#480231
05/27/20 09:55
05/27/20 09:55
|
Joined: May 2020
Posts: 1
Giuseppe
Guest
|
Guest
Joined: May 2020
Posts: 1
|
Hi, i'm not able to login in my demo account. Do you have any ideas to try ? Thanks
2020-05-27 11:47:31.820 INFO com.dukascopy.api.impl.connect.AuthorizationClient - environment(jnlp.client.mode)=DEMO, platformInstanceId=null
2020-05-27 11:47:31.833 INFO com.dukascopy.api.impl.connect.AuthorizationClient - Auth step 1 request [F8C2A4A307049D89230810E10CBF81E81E1AB801]
2020-05-27 11:47:31.834 DEBUG com.dukascopy.api.impl.connect.AuthorizationClient - >> [https://login.dukascopy.com/authorization-1/demo/auth?munus=srp_api&passus=1&sermo=80ed67c7-5c84-4f13-b6e6-dd01feed6e46&putent_genus=0&appello=F8C2A4A307049D89230810E10CBF81E81E1AB801&srp_versio=1]
2020-05-27 11:47:33.136 DEBUG com.dukascopy.api.impl.connect.AuthorizationClient - << [{"B":"640ed6a32bccb751ab77ce7d31591f3e5da30e2a63d8a7439c00f67888245561cdbff08b7d072409f8cb738650e5db4dac2959b9888e16e8341f2a43d807c438f483055bbb836249c04a0475441c45ee138d3fb4b19e10c39e6dec1cc0f59badf02a7ccf01bf45b71576eea3beae0dd9cc07e55a52a6d7ae39e22ec0e1fd1dc29110007ddca35f10480f5e869d358de59b4e4bf30cdd4b35e81107aaafcbab718e2a3a699dd2b35399a9f1d5210287957bf04e2ef0870c1e7af660a66b42a17fdc8b968ce41fbf6deef083017e4a6cb07739481a24b66d1b645b63941031cab55ff384e51496185cc5206c37d2914c10049274d3e78c63cf57537f0807d91c14","S":"3c3365a24f7e1a14c1ecaf120468a40f","G":"2","H":"SHA-256","K":"5b9e8ef059c6b32ea59fc1d322d37f04aa30bae5aa9003b8321e21ddb04e300","N":"ac6bdb41324a9a9bf166de5e1389582faf72b6651987ee07fc3192943db56050a37329cbb4a099ed8193e0757767a13dd52312ab4b03310dcd7f48a9da04fd50e8083969edb767b0cf6095179a163ab3661a05fbd5faaae82918a9962f0b93b855f97993ec975eeaa80d740adbf4ff747359d041d5c33ea71d281e446b14773bca97b43a23fb801676bd207a436c6481f1d2b9078717461a5b9d32e688f87748544523b524b0d57d5ea77a2775d2ecfa032cfbdbf52fb3786160279004e57ae6af874e7303ce53299ccc041c7bc308d82a5698f3a8d0c38271ae35f8e9dbfbb694b5c803d89f7ae435de236d525f54759b65e372fcd68ef20fa7111f9e4aff73","srp_versio":"1"}]
2020-05-27 11:47:33.139 INFO com.dukascopy.api.impl.connect.AuthorizationClient - Auth step 1 response [ServerResponseObject [passwordServerResponse=Step1ServerResponse [serverPublicValueB=640ed6a32bccb751ab77ce7d31591f3e5da30e2a63d8a7439c00f67888245561cdbff08b7d072409f8cb738650e5db4dac2959b9888e16e8341f2a43d807c438f483055bbb836249c04a0475441c45ee138d3fb4b19e10c39e6dec1cc0f59badf02a7ccf01bf45b71576eea3beae0dd9cc07e55a52a6d7ae39e22ec0e1fd1dc29110007ddca35f10480f5e869d358de59b4e4bf30cdd4b35e81107aaafcbab718e2a3a699dd2b35399a9f1d5210287957bf04e2ef0870c1e7af660a66b42a17fdc8b968ce41fbf6deef083017e4a6cb07739481a24b66d1b645b63941031cab55ff384e51496185cc5206c37d2914c10049274d3e78c63cf57537f0807d91c14, saltS=3c3365a24f7e1a14c1ecaf120468a40f, safePrimeN=ac6bdb41324a9a9bf166de5e1389582faf72b6651987ee07fc3192943db56050a37329cbb4a099ed8193e0757767a13dd52312ab4b03310dcd7f48a9da04fd50e8083969edb767b0cf6095179a163ab3661a05fbd5faaae82918a9962f0b93b855f97993ec975eeaa80d740adbf4ff747359d041d5c33ea71d281e446b14773bca97b43a23fb801676bd207a436c6481f1d2b9078717461a5b9d32e688f87748544523b524b0d57d5ea77a2775d2ecfa032cfbdbf52fb3786160279004e57ae6af874e7303ce53299ccc041c7bc308d82a5698f3a8d0c38271ae35f8e9dbfbb694b5c803d89f7ae435de236d525f54759b65e372fcd68ef20fa7111f9e4aff73, correspondingGeneratorG=2, hashAlgorithmH=SHA-256, srpProtocolVersion=1], ]]
2020-05-27 11:47:33.393 INFO com.dukascopy.api.impl.connect.AuthorizationClient - Auth step 2 request A [9723633629745781258291665108250298167773162259434495727130943720882573209998209245634693088223500066110404828134434187038921730171928994127347382789785440111437100436902419902247232874902092936775376015422862470087950344546482674166823824130008586597055583920054563982037022212090959661089128437165362522826616914906945532762245187625773725851486213040504457469602110567640379807925026664661454775749998254834179946541121561947753282668942383714461137771500193443188055269180184505159196164198150069102327479894881530021080047125659496290471868524370300863967421320431966123667792536666366966929104058893512152839754], M1 [93191456209979852325999491550685485980760551849208308113285846748433587752390]
2020-05-27 11:47:33.394 DEBUG com.dukascopy.api.impl.connect.AuthorizationClient - >> [https://login.dukascopy.com/authorization-1/demo/auth?munus=srp_api&testimonium_nuntius=ce087eb9a7df130ed13ce2a6b83172458fba3a1dad22c09ee05c80d5e111cdc6&passus=2&publicus_pendo=4d06a8f2f69ba68b1376e476e477ecf4516d9ef14bb30a7fa25067cc80448db80c7d22749e5a78770881f1799527e046bfadd563399b664f5ae01c5a337a6a41e14bb002e3b165c9746aa93b53d91048c33719cd4cbb8f378167090820848e09a7246399b4136e109b1f6fa00dcb828ed9b3b6eeaedb2166695f90011ebd8d3b199955c95ef332981fbe62c3359aa32e895293a7b5eb7961f38eec23ed6d08729a01d87682a50329a218b6d02d38b91012cef7fb0d15492d43a1b0c84ef06416d1201310f5e05c823733e3cd9a5991a1db751468bcfa22336ce60b9835e646fcb927b51297d500251fbfe6d12d039a58656be366097a0979f779047af0b1f64a&sermo=80ed67c7-5c84-4f13-b6e6-dd01feed6e46&putent_genus=0&srp_versio=1]
2020-05-27 11:47:33.758 DEBUG com.dukascopy.api.impl.connect.AuthorizationClient - << [Auth failed]
2020-05-27 11:47:33.758 ERROR com.dukascopy.api.impl.connect.AuthorizationClient - Auth failed
AuthServerResponse [response=Auth failed, responseCode=801, headerFields={Transfer-Encoding=[chunked], null=[HTTP/1.1 801], CF-RAY=[599ed0ab2fe2cd26-FCO], Server=[cloudflare], Connection=[keep-alive], Pragma=[no-cache], Last-Modified=[Wed, 27 May 2020 09:47:33 GMT], StatusCode=[801], Date=[Wed, 27 May 2020 09:47:33 GMT], StatusMessage=[Auth failed], CF-Cache-Status=[DYNAMIC], Cache-Control=[no-cache, must-revalidate, no-store, max-age=0], Access-Control-Allow-Credentials=[true], Set-Cookie=[__cfduid=d004f77709d86f7f9fd2ecde8189b2c071590572852; expires=Fri, 26-Jun-20 09:47:32 GMT; path=/; domain=.dukascopy.com; HttpOnly; SameSite=Lax], Expires=[Thu, 01 Jan 1970 00:00:00 GMT], Content-Language=[en], Expect-CT=[max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"], cf-request-id=[02f720befb0000cd26bb122200000001], Content-Type=[text/html;charset=UTF-8]}]
at com.dukascopy.auth.client.transport.http.HttpAuthTransport.makeServerRequest(HttpAuthTransport.java:109)
at com.dukascopy.auth.client.protocol.AbstractSRPClientProtocol.performStep2(AbstractSRPClientProtocol.java:196)
at com.dukascopy.auth.client.SRPAuthClient.step2(SRPAuthClient.java:179)
at com.dukascopy.auth.client.SRPAuthClient.authenticate(SRPAuthClient.java:76)
at com.dukascopy.api.impl.connect.AuthorizationClient.getAPIsAndTicketUsingLogin_SRP6(AuthorizationClient.java:1021)
at com.dukascopy.api.impl.connect.AuthorizationClient.getAPIsAndTicketUsingLogin_SRP6(AuthorizationClient.java:838)
at com.dukascopy.api.impl.connect.DCClientImpl.authenticate(DCClientImpl.java:563)
at com.dukascopy.api.impl.connect.DCClientImpl.connect(DCClientImpl.java:344)
at com.dukascopy.api.impl.connect.DCClientImpl.connect(DCClientImpl.java:334)
at com.jforex.kforexutils.client.LoginApi$login$1.invoke(LoginApi.kt:26)
at com.jforex.kforexutils.client.LoginApi$login$1.invoke(LoginApi.kt:12)
at arrow.typeclasses.ApplicativeError$DefaultImpls.catch(ApplicativeError.kt:37)
at arrow.typeclasses.MonadError$DefaultImpls.catch(MonadError.kt)
at arrow.typeclasses.MonadThrow$DefaultImpls.catch(MonadError.kt)
at arrow.effects.typeclasses.MonadDefer$DefaultImpls.catch(MonadDefer.kt)
at arrow.effects.instances.IOMonadDeferInstance$DefaultImpls.catch(io.kt)
at arrow.effects.instances.io.monadDefer.IOMonadDeferInstanceKt$monadDefer$1.catch(IOMonadDeferInstance.kt:83)
at com.jforex.dzjforex.misc.PluginDependencies$Companion$invoke$1.catch(Plugin.kt)
at com.jforex.kforexutils.client.LoginDependencies$Companion$invoke$1.catch(IClientLoginExtension.kt)
at arrow.typeclasses.ApplicativeError$DefaultImpls.catch(ApplicativeError.kt:43)
at arrow.typeclasses.MonadError$DefaultImpls.catch(MonadError.kt)
at arrow.typeclasses.MonadThrow$DefaultImpls.catch(MonadError.kt)
at arrow.effects.typeclasses.MonadDefer$DefaultImpls.catch(MonadDefer.kt)
at arrow.effects.instances.IOMonadDeferInstance$DefaultImpls.catch(io.kt)
at arrow.effects.instances.io.monadDefer.IOMonadDeferInstanceKt$monadDefer$1.catch(IOMonadDeferInstance.kt:83)
at com.jforex.dzjforex.misc.PluginDependencies$Companion$invoke$1.catch(Plugin.kt)
at com.jforex.kforexutils.client.LoginDependencies$Companion$invoke$1.catch(IClientLoginExtension.kt)
at com.jforex.kforexutils.client.LoginApi.login(LoginApi.kt:18)
at com.jforex.kforexutils.client.IClientLoginExtensionKt$login$$inlined$with$lambda$1.invoke(IClientLoginExtension.kt:60)
at com.jforex.kforexutils.client.IClientLoginExtensionKt$login$$inlined$with$lambda$1.invoke(IClientLoginExtension.kt)
at arrow.effects.IORunLoop.step(IORunLoop.kt:56)
at arrow.effects.IO.unsafeRunTimed(IO.kt:130)
at arrow.effects.IO.unsafeRunSync(IO.kt:127)
at com.jforex.dzjforex.misc.PluginKt.runDirect(Plugin.kt:62)
at com.jforex.dzjforex.misc.PluginKt$runWithProgress$1.invokeSuspend(Plugin.kt:64)
at com.jforex.dzjforex.misc.PluginKt$runWithProgress$1.invoke(Plugin.kt)
at arrow.effects.DeferredK$Generated$DefaultGenerated$1.invokeSuspend(DeferredK.kt:188)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:32)
at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:233)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:594)
at kotlinx.coroutines.scheduling.CoroutineScheduler.access$runSafely(CoroutineScheduler.kt:60)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:742)
2020-05-27 11:47:33.762 DEBUG com.dukascopy.api.impl.connect.DCClientImpl -
|
|
|
|