Dukascopy
 
 
Wiki JStore Search Login

JForex High Performance Launch Script (free)
 Post subject: JForex High Performance Launch Script (free) Post rating: 0   New post Posted: Wed 15 Aug, 2012, 02:32 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
JForex typically runs in the Java "client vm" standard runtime. Extreme high performance throughput can be obtained by running under the high performance "server vm". This runtime is available by installing the Oracle JDK (Java Development Kit) which provides both the "client" and the "server" vm's (virtual machines).

The script uses the "-server" directive, and some extreme hotspot runtime flags to achieve very high performance for those who need it. Use at your own discretion, no support provided, zip file attached to this message.

Windows only due to usage of a vbs (Visual Basic Script) which fetches the jnlp file, modifies it, and then that file is used to launch JForex. You are free to modify if you are competent to do so, with no licensing restrictions whatsoever. Read the readme carefully, which should explain everything.

The point is that if the jnlp file is changed slightly, this should continue to work since it dynamically inserts a block of text before using the resulting file to launch JForex.

Hope this helps someone. HyperScalper.

(contents of the readme file are listed below... this is technical, may require scripting knowledge)

READ ME BEFORE USING DYNAMIC LAUNCH SCRIPT

This software is for educational purposes only. Use at your own risk.
You will need scripting skills to modify the file, if necessary.
You are free to do whatever you wish with these files.
email [email protected] with questions
Consider using HyperScalper for JForex, available
from https://FutureScalper.com

PURPOSE

Run Dukascopy JForex LIVE under the high performance
Java runtime by dynamically modifying the launch jnlp
file, and then invoking it with javaws (Java Web Start)

RULES:

These scripts require that you have installed the high performance
java "server vm" runtime from Oracle. Only 32-bit software
has been tested, and only Java 6 series.

In a 32-bit windows command prompt:
c:\windows\syswow64\cmd.exe you may type

"java -server -version" will verify your java installation,
sample output follows:

C:\LaunchTest\live>java -version
java version "1.6.0_32"
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java HotSpot(TM) Client VM (build 20.7-b02, mixed mode, sharing

C:\LaunchTest\live>java -server -version <-- test for server vm here !!
java version "1.6.0_32"
Java(TM) SE Runtime Environment (build 1.6.0_32-b05)
Java HotSpot(TM) Server VM (build 20.7-b02, mixed mode)

C:\LaunchTest\live>

Only for Windows, using Oracle Java 6 32-bit series runtime.
MUST obtain high performance "server vm" (virtual machine).

The server vm resides in the jre6/bin/server folder, and is
a dll named "jvm.dll" but it must match the Java update version
in the jre6/bin/client folder.

ONCE YOU HAVE INSTALLED THE CORRECT CLIENT
AND SERVER VM VERSIONS, DISABLE JAVA UPDATES
SO THEY WILL NOT CHANGE.

You must install the correct "server vm" which can be obtained
by installing the JDK (Java Development Kit)
Java 6 Update 32 for Windows 32-bit is recommended.

Place the .bat file, and the .vbs files into THE SAME
directory. Make a shortcut to the .bat file with that
directory as default.

Run the bat file to launch JForex.

Hard coded into the script is the url to launch JForex Live.

url = "https://www.dukascopy.com/client/live/jclient/jforex.jnlp"

TEMPORARY FILE

This file is re-created on every launch, so it may be
deleted.

launch-live-temp.jnlp

The following text can be seen as inserted into the middle
of the file. These are esoteric High Performance options which are
hard-coded into the vbs script file, and should be modified only by
a competent script writer.

These options are EXTREME for highest possible performance !!
Modify only if you are competent !

<j2se version="1.6.0+" java-vm-args=" -server -
-XX:GCPauseIntervalMillis=100 -XX:-DoEscapeAnalysis -
-XX:ThreadStackSize=128 -XX:CompileThreshold=10 -
-XX:CICompilerCount=2 -XX:+UseBiasedLocking -
-XX:+ForceTimeHighResolution -XX:+UseG1GC -
-XX:+RelaxAccessControlCheck -XX:-TieredCompilation -
-XX:MaxInlineSize=500000 -Xverify:none -XX:FreqInlineSize=500000 -
-XX:-DontCompileHugeMethods -XX:+AlwaysPreTouch -
-XX:+UseFastAccessorMethods -Xss128k -Xms800m -Xmx800m -Xbatch -Xnoclassgc -
-Dswing.defaultlaf=com.sun.java.swing.plaf.windows.WindowsLookAndFeel -Dswing.metalTheme=steel -
-Ddeployment.security.mixcode=DISABLE -
-Duser.timezone=America/New_York -Duser.language=en -Duser.region=US />


A typical output file looks like this. You will recognize the block of text
above, as inserted into the middle of the temporary output file prior to launch.

(Use wordpad if you need
carriage returns and line feeds, as notepad may not render it correctly)

<?xml version="1.0"?>
<jnlp spec="1.6+" codebase="https://www.dukascopy.com/client/live/jclient/" href="jforex.jnlp">
<information>
<title>JForex Client</title>
<vendor>FX Marketplace Platform</vendor>
<description kind="one-line">JForex Trading Platform</description>
<description kind="short">JForex Trading Platform</description>
<description kind="tooltip">JForex Trading Platform</description>
<icon href="../../images/jforex_icon.png"/>
</information>
<security>
<all-permissions/>
</security>
<update check="timeout" policy="always"/>
<resources>

<j2se version="1.6.0+" java-vm-args=" -server -
-XX:GCPauseIntervalMillis=100 -XX:-DoEscapeAnalysis -
-XX:ThreadStackSize=128 -XX:CompileThreshold=10 -
-XX:CICompilerCount=2 -XX:+UseBiasedLocking -
-XX:+ForceTimeHighResolution -XX:+UseG1GC -
-XX:+RelaxAccessControlCheck -XX:-TieredCompilation -
-XX:MaxInlineSize=500000 -Xverify:none -XX:FreqInlineSize=500000 -
-XX:-DontCompileHugeMethods -XX:+AlwaysPreTouch -
-XX:+UseFastAccessorMethods -Xss128k -Xms800m -Xmx800m -Xbatch -Xnoclassgc -
-Dswing.defaultlaf=com.sun.java.swing.plaf.windows.WindowsLookAndFeel -Dswing.metalTheme=steel -
-Ddeployment.security.mixcode=DISABLE -
-Duser.timezone=America/New_York -Duser.language=en -Duser.region=US />

<property name="jnlp.client.version" value="2.17.25"/>
<property name="jnlp.platform.mode" value="jforex"/>
<property name="jnlp.client.mode" value="LIVE"/>
<property name="jnlp.login.url" value="https://www1.dukascopy.com/authorization/live,https://www2.dukascopy.com/authorization/live,https://www6.dukascopy.com/authorization/live"/>
<property name="sun.java2d.d3d" value="false"/>
<java version="1.6+" initial-heap-size="32m" max-heap-size="512m"/>
<jar href="lib/7zip-4.65.jar" main="false"/>
<jar href="lib/DDS2-TextEditor-1.11.jar" main="false"/>
<jar href="lib/JForex-API-2.6.71.jar" main="false"/>
<jar href="lib/MQL4Connector-2.6.71.jar" main="false"/>
<jar href="lib/MQL4Converter-1.3.jar" main="false"/>
<jar href="lib/commons-lang3-3.0.1.jar" main="false"/>
<jar href="lib/ecj-3.5.2.jar" main="false"/>
<jar href="lib/jForex-2.17.25.jar" main="true"/>
<jar href="lib/jakarta-oro-2.0.8.jar" main="false"/>
<jar href="lib/jakarta-regexp-1.4.jar" main="false"/>
<jar href="lib/jcalendar-1.3.3.jar" main="false"/>
<jar href="lib/lucene-core-3.4.0.jar" main="false"/>
<jar href="lib/lucene-highlighter-3.4.0.jar" main="false"/>
<jar href="lib/lucene-memory-3.4.0.jar" main="false"/>
<jar href="lib/lucene-queries-3.4.0.jar" main="false"/>
<jar href="lib/mina-core-1.1.7.jar" main="false"/>
<jar href="lib/mina-filter-ssl-1.1.7.jar" main="false"/>
<jar href="lib/nlink-1.2.jar" main="false"/>
<jar href="lib/slf4j-api-1.6.4.jar" main="false"/>
<jar href="lib/slf4j-jdk14-1.6.4.jar" main="false"/>
<jar href="lib/ta-lib-0.4.4dc.jar" main="false"/>
</resources>
<application-desc main-class="com.dukascopy.dds2.greed.GreedClient"/>
</jnlp>


Attachments:
File comment: Sample scripts for Windows with instructions to run JForex in high performance Java runtime (windows)
JForexLiveHighPerformanceSample.zip [4.62 KiB]
Downloaded 381 times
DISCLAIMER: Dukascopy Bank SA's waiver of responsability - Documents, data or information available on this webpage may be posted by third parties without Dukascopy Bank SA being obliged to make any control on their content. Anyone accessing this webpage and downloading or otherwise making use of any document, data or information found on this webpage shall do it on his/her own risks without any recourse against Dukascopy Bank SA in relation thereto or for any consequences arising to him/her or any third party from the use and/or reliance on any document, data or information found on this webpage.
 

Jump to:  

  © 1998-2025 Dukascopy® Bank SA
On-line Currency forex trading with Swiss Forex Broker - ECN Forex Brokerage,
Managed Forex Accounts, introducing forex brokers, Currency Forex Data Feed and News
Currency Forex Trading Platform provided on-line by Dukascopy.com