Gamestudio Links
Zorro Links
Newest Posts
rMomentum always returns 0 when checking for peak/valley
by jcl
Today at 17:38
a little help here?
by 3run
Today at 16:38
How to set a pair trading order right
by jcl
Today at 11:46
Dual Momentum Algorithm - The way Zorro would have done it
by Hredot
Today at 05:21
HIgh FRequency Trading Script -- Highly Profitable
by Yosh
Yesterday at 19:27
Linear Regression in objective function
by jcl
11/22/17 15:40
MT4 vs Zorro
by pascalx
11/22/17 14:00
AUM Magazine
Latest Screens
RPG PARTY
Triton Wing now available on Steam
AckCon'17: Lotter vs The World
Triton Wing
Who's Online
14 registered (Lobo, Hredot, painkiller, 3run, alibaba, Kartoffel, FLD, RealSerious3D, Jerome8911, 1 invisible), 169 Guests and 4 Spiders online.
Key: Admin, Global Mod, Mod
Newest Members
ech87, Lobo, Andy60, AzzoCorp, franzz
17813 Registered Users
Page 8 of 13 < 1 2 ... 6 7 8 9 10 12 13 >
Topic Options
Rate This Topic
#467108 - 07/16/17 10:52 Re: IG plugin initial release [Re: mhdus]
kmerlo Offline
Newbie

Registered: 03/08/17
Posts: 47
Loc: Bologna
I agree with this suggestion
Even myself once for error I finished the ig's quote..

PS for DALLA
in the next days I'll try the new release and I'll post the feedback
Thanks for all!


Originally Posted By: mhdus
A threshold would still help as it is much better to see a strategy not starting (and a message such as "warning: attempting to load too much historical data, check your local data and configuration") than just exceeding the quota limits and having to wait for one week before trying again... Ok, maybe not the highest-priority enhancement but not useless either. In fact the API should be doing that.
Anyway, I will try updating my local data from other sources and then give it another shot.

Top
#467112 - 07/16/17 16:07 Re: IG plugin initial release [Re: kmerlo]
mhdus Offline
Junior Member

Registered: 07/19/16
Posts: 72
Loc: Düsseldorf, Germany
I updated all my history files via FXCM and tried starting Z7 and Z12 using the IG plugin. Deliberately on Sunday to be sure I am not missing any latest price data. I did also check the _2017.t6 files for completeness using ZHistoryEditor. As expected, data is included up to last Friday night and no gaps except the week-ends.

Z7 started without errors with the following Zorro messages:

Z7 .x ..
ig.dll => IG plugin mounted
Z7.55: PH PR M 100 H 5 W 2 V 2 .
Login IG.. at UTC 07-16 13:16.
Load EUR/USD prices.. 680+33 h, gap 41 h
Load USD/JPY prices.. 680+33 h, gap 41 h
Load GBP/USD prices.. 680+33 h, gap 41 h

Trade: Z7 2017-07-16
Lookback period (480 bars) .
Read Z7.c

I understand "gap 41h" is due to the weekend gap, so no issue. However, I don't understand where the +33h is coming from? 3 x 33h x 60 min/h = 5940 historical bars consumed ... :-(

Hoping IG will reset the quota at the beginning of the calendar week I tried starting Z12, too:

Z12
Login IG... at UTC 07-16 13:17
Z12.54: PH PR M 100 H 5 W 2 V 2
Load EUR/USD prices.. 2800+211 h, gap 41 h
Load USD/CHF prices.. 2800+211 h, gap 41 h
!Severe error occured, check igzplugin.log logfile!
!Severe error occured, check igzplugin.log logfile!
Error 053: CX.D.GBPUSD.CASH.IP unavailable at this time
!Severe error occured, check igzplugin.log logfile!

[...]

!Severe error occured, check igzplugin.log logfile!
Error 053: CX.D.XAGUSD.CASH.IP unavailable at this time
V 1.600 on Sun 17-07-16 15:17:06 (Zorro S subscription)

Trade: Z12 2017-07-16
Read Z12.fac
Read Z12.par
Lookback period (500 bars)
[184: Thu 17-03-16 16:09] 1.0722/1.07441.0713/1.0736
Error 033: GBP/USD missing in INITRUN
Error 011: Function ATR called with invalid parameters (no price)
Error 011: Function BBANDS called with invalid parameters (no price).
[185: Thu 17-03-16 20:09] 1.0736/1.07711.0708/1.0768

Of course, the igzplugin log shows:
ERROR c.danlind.igz.adapter.RestApiAdapter - Exception when getting historic prices for epic CX.D.GBPUSD.CASH.IP, error was {"errorCode":"error.public-api.exceeded-api-key-allowance"

Again, I wonder where the +211h is coming from? The data files were up-to-date ...

Obviously PRELOAD was set and recognized. So what else was wrong?
Any help much appreciated. Many thanks in advance!

Top
#467114 - 07/16/17 22:03 Re: IG plugin initial release [Re: mhdus]
Dalla Offline
Member

Registered: 02/24/17
Posts: 211
From the manual

"Loading AUD/USD prices... 910+111 h

The PRELOAD flag was set and historic price data was available. Zorro read 910 hours price data from its history files and downloaded additional 111 hours price history from the broker's server. For portfolio strategies the number of downloaded hours can differ from asset to asset."

These messages however are generated by Zorro. You say that your files are up to date, but it looks like zorro disagrees. Also, are you running with BarPeriod 1? If not, then the historical bars consumed is probably not as bad as you think.

Top
#467117 - 07/16/17 23:15 Re: IG plugin initial release [Re: Dalla]
mhdus Offline
Junior Member

Registered: 07/19/16
Posts: 72
Loc: Düsseldorf, Germany
I had seen this in the manual. And I understand your conclusion "zorro disagrees". However, it does not fit my previous checks of the data. Eventually the handling of (no) data during the week-end is not as I would expect (see the messages in the log below regarding EUR/USD data for this week-end).

Thanks for the hint regarding BarPeriod - indeed there should be much less bars consumed (hourly bars for Z7, 4h bars for Z12). Which even more confuses my why the quota is exceeded so quickly... Is it possible to debug what (amount of) data is requested from the API by the IG plugin?

What I realized later, after my previous post: the additional hours of data loaded are different, depending on which broker/plugin is used. Here are 2 logs from Z7 start (using Verbose = 3), first FXCM then IG immediately after:

Z7
Login FXCM.. at UTC 07-16 20:33
Z7.55: PH PR M 100 H 5 W 3 V 3
Load AssetsFix
!EUR/USD 07-14 21:13:00 to 07-16 20:33:42 failed
Preload EUR/USD 40800 min, gap 48 h
663 Bars 2017-06-06..2017-07-14 generated
EUR/USD: 0..49565, 2017-06-06..1899-12-30
Preload USD/JPY 40800 min, gap 48 h
USD/JPY: 0..49565, 2017-06-06..1899-12-30
Preload GBP/USD 40800 min, gap 48 h
GBP/USD: 0..49565, 2017-06-06..1899-12-30
V 1.600 on Sun 17-07-16 22:33:49 (Zorro S subscription)

Trade: Z7 2017-07-16
Lookback period (480 bars)
[182: Fri 17-06-16 08:03] 1.1155/1.11691.1152/1.1169

[...]

Session end at 20:33
Logout.. ok



Z7
Login IG... at UTC 07-16 20:34
Z7.55: PH PR M 100 H 5 W 3 V 3
Load AssetsIG
!CX.D.EURUSD.CASH.IP 07-14 21:13:00 to 07-16 20:34:34
!=> 07-13 18:45:00 to 20:30:00, 108 ticks
Load EUR/USD prices.. 680+27 h
663 Bars 2017-06-06..2017-07-14 generated
EUR/USD: 0..49673, 2017-06-06..1899-12-30
Load USD/JPY prices.. 680+26 h
USD/JPY: 0..49673, 2017-06-06..1899-12-30
Load GBP/USD prices.. 680+26 h
GBP/USD: 0..49673, 2017-06-06..1899-12-30
V 1.600 on Sun 17-07-16 22:34:36 (Zorro S subscription)

Trade: Z7 2017-07-16
Lookback period (480 bars)
[182: Fri 17-06-16 08:02] 1.1156/1.11681.1152/1.1168

[...]

Session end at 20:34
Logout.. ok


Based on the above message "07-13 18:45:00 to 20:30:00, 108 ticks" from the IG plugin I checked my local EURUSD_2017.t6 file once again: the data during this timeframe is included! So I wonder what the plugin was doing about these 108 ticks and why?

I just did the same test with Z12 now after 11PM (week-end is over) and have the same effect: with FXCM Zorro reports 2800 +1h for all prices, with IG it reports 2800 +205h for the first 5 price series, then the quota exceeded issue kicks in again:

2017-07-16 23:06:03.601 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.EURUSD.CASH.IP
2017-07-16 23:06:03.604 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.EURUSD.CASH.IP
2017-07-16 23:06:04.419 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDCHF.CASH.IP
2017-07-16 23:06:04.435 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDCHF.CASH.IP
2017-07-16 23:06:05.346 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.GBPUSD.CASH.IP
2017-07-16 23:06:05.347 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.GBPUSD.CASH.IP
2017-07-16 23:06:06.139 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDCAD.CASH.IP
2017-07-16 23:06:06.140 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDCAD.CASH.IP
2017-07-16 23:06:06.697 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDJPY.CASH.IP
2017-07-16 23:06:06.701 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDJPY.CASH.IP
2017-07-16 23:06:07.658 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.AUDUSD.CASH.IP
2017-07-16 23:06:07.659 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.AUDUSD.CASH.IP
2017-07-16 23:06:07.810 [main] ERROR c.danlind.igz.adapter.RestApiAdapter - Exception when getting broker account info: {"errorCode":"error.public-api.exceeded-api-key-allowance"}

Please let me know if there are any additional debugging options I should apply. The plugin could be really great but given the data limitations by IG debugging and eventually throttling data consumption appears to be a crucial prerequisite.

Top
#467119 - 07/17/17 06:42 Re: IG plugin initial release [Re: mhdus]
Dalla Offline
Member

Registered: 02/24/17
Posts: 211
First thing first, just to make it clear.
The error you are seeing
errorCode":"error.public-api.exceeded-api-key-allowance"
Means that there has been too many calls in a too short time period. So your historical quota has not been consumed, when that happens the message is slightly different.

If you open the logback.xml (same directory as plugin log file) and change log level from info to debug for only for this line
<root level="info">

You should get some more info on exactly what data zorro is asking for.

Have you also made sure that you are indeed using the same assets for the IG plugin and FXCM? Could you please post your assets file for both?
The +1 vs +205 has nothing to do with the plugin as far as I know.

Top
#467128 - 07/17/17 14:27 Re: IG plugin initial release [Re: Dalla]
mhdus Offline
Junior Member

Registered: 07/19/16
Posts: 72
Loc: Düsseldorf, Germany
Asset files are quite the same, except the Symbol names, of course:

AssetsFXCM.csv:
Name,Price,Spread,RollLong,RollShort,PIP,PIPCost,MarginCost,Leverage,LotAmount,Commission,Symbol
AUD/USD,0.77311,0.00005,0.2400,-0.5100,0.0001,0.087100,9.0000,74.820,1000.0,0.600,AUD/USD
EUR/CHF,1.07962,0.00004,0.0800,-0.2600,0.0001,0.092630,75.0000,13.334,1000.0,0.800,EUR/CHF
EUR/JPY,123.3590,0.00600,-0.3000,0.0900,0.0100,0.081066,10.0000,100.002,1000.0,0.800,EUR/JPY
EUR/USD,1.13795,0.00005,-0.0200,0.0100,0.0001,0.087100,10.0000,99.115,1000.0,0.600,EUR/USD
GBP/USD,1.51364,0.00003,0.0500,-0.1200,0.0001,0.087100,14.0000,94.170,1000.0,0.600,GBP/USD
GER30,10884.00,1.00000,-0.1000,0.0000,1.0000,0.100000,6.0000,181.400,0.1,0.000,GER30
NAS100,4185.00,2.0000,-0.1000,0.0000,1.0000,0.087100,2.0000,182.257,0.1,0.000,NAS100
NZD/USD,0.67752,0.00007,0.6000,-1.3200,0.0001,0.088713,7.0000,85.864,1000.0,0.800,NZD/USD
SPX500,2032.40,0.50000,-0.5000,0.0000,0.1000,0.087100,8.0000,221.278,1.0,0.000,SPX500
UK100,6869.00,2.0000,-0.1000,0.0000,1.0000,0.131830,6.0000,150.923,0.1,0.000,UK100
US30,17520.00,2.0000,-0.5000,0.0000,1.0000,0.087100,6.0000,254.332,0.1,0.000,US30
USD/CAD,1.24466,0.00010,-0.2100,0.0900,0.0001,0.069980,10.0000,87.101,1000.0,0.800,USD/CAD
USD/CHF,0.92203,0.00022,0.1500,-0.5800,0.0001,0.094460,50.0000,17.419,1000.0,0.600,USD/CHF
USD/JPY,117.4890,0.00400,0.0200,-0.0400,0.0100,0.074130,10.0000,87.095,1000.0,0.600,USD/JPY
XAG/USD,17.2350,0.04600,-0.0009,0.0000,0.0100,0.435470,5.0000,150.107,50.0,0.000,XAG/USD
XAU/USD,1260.82,0.47000,-0.0124,0.0000,0.0100,0.008710,11.0000,99.834,1.0,0.000,XAU/USD

AssetsIG.csv:
Name,Price,Spread,RollLong,RollShort,PIP,PIPCost,MarginCost,Leverage,LotAmount,Commission,Symbol
AUD/USD,0.77311,0.00005,0.24,-0.51,0.0001,0.0871,9,0,1000,0.6,CX.D.AUDUSD.CASH.IP
EUR/CHF,1.07962,0.00004,0.08,-0.26,0.0001,0.09263,75,0,1000,0.8,CX.D.EURCHF.CASH.IP
EUR/JPY,123.359,0.006,-0.3,0.09,0.01,0.081066,10,0,1000,0.8,CX.D.EURJPY.CASH.IP
EUR/USD,1.13795,0.00005,-0.02,0.01,0.0001,0.0871,10,0,1000,0.6,CX.D.EURUSD.CASH.IP
GBP/USD,1.51364,0.00003,0.05,-0.12,0.0001,0.0871,14,0,1000,0.6,CX.D.GBPUSD.CASH.IP
GER30,10884,1,-0.1,0,1,0.1,6,0,0.1,0,IX.D.DAX.IFD.IP
NAS100,4185,2,-0.1,0,1,0.0871,2,0,0.1,0,IX.D.NASDAQ.IFD.IP
NZD/USD,0.67752,0.00007,0.6,-1.32,0.0001,0.088713,7,0,1000,0.8,CX.D.NZDUSD.CASH.IP
SPX500,2032.4,0.5,-0.5,0,0.1,0.0871,8,0,1,0,IX.D.SPTRD.IFD.IP
UK100,6869,2,-0.1,0,1,0.13183,6,0,0.1,0,IX.D.FTSE.CFD.IP
US30,17520,2,-0.5,0,1,0.0871,6,0,0.1,0,IX.D.DOW.IFD.IP
USD/CAD,1.24466,0.0001,-0.21,0.09,0.0001,0.06998,10,0,1000,0.8,CX.D.USDCAD.CASH.IP
USD/CHF,0.92203,0.00022,0.15,-0.58,0.0001,0.09446,50,0,1000,0.6,CX.D.USDCHF.CASH.IP
USD/JPY,117.489,0.004,0.02,-0.04,0.01,0.07413,10,0,1000,0.6,CX.D.USDJPY.CASH.IP
XAG/USD,17.235,0.046,-0.0009,0,0.01,0.43547,5,0,50,0,CX.D.XAGUSD.CASH.IP
XAU/USD,1260.82,0.47,-0.0124,0,0.01,0.00871,11,0,1,0,CX.D.XAUUSD.CASH.IP


Thanks for the hint on "error.public-api.exceeded-api-key-allowance" vs. "error.public-api.exceeded-account-historical-data-allowance" (the latter I finally got just now after some more testing, unfortunately. So no more testing for one week). At least this confirms that the historical data consumption is not the main issue and the slight differences in the messages reported by Zorro about historical data were just distracting...

So what about this API limit (https://labs.ig.com/faq) then:
Per-account non-trading requests per minute: 30

Here is what I got while starting Z12 without any previous testing for (a lot) more than one minute:

2017-07-17 13:56:32.965 [main] INFO c.danlind.igz.brokerapi.BrokerLogin - Connecting to IG Real-account as xxxxxx
2017-07-17 13:56:34.630 [main] INFO com.danlind.igz.ZorroBridge - Login successful
2017-07-17 13:56:34.630 [main] INFO com.danlind.igz.brokerapi.BrokerTime - Subscribing to Lightstreamer heartbeat
2017-07-17 13:56:34.633 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer account updates for account: XXXXX
2017-07-17 13:56:34.778 [main] INFO com.danlind.igz.brokerapi.BrokerTime - Getting initial time from restAPI
2017-07-17 13:56:34.850 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.EURUSD.CASH.IP
2017-07-17 13:56:34.852 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.EURUSD.CASH.IP
2017-07-17 13:56:35.571 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDCHF.CASH.IP
2017-07-17 13:56:35.572 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDCHF.CASH.IP
2017-07-17 13:56:37.001 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.GBPUSD.CASH.IP
2017-07-17 13:56:37.002 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.GBPUSD.CASH.IP
2017-07-17 13:56:37.641 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDCAD.CASH.IP
2017-07-17 13:56:37.707 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDCAD.CASH.IP
2017-07-17 13:56:38.415 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.USDJPY.CASH.IP
2017-07-17 13:56:38.419 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.USDJPY.CASH.IP
2017-07-17 13:56:38.943 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: CX.D.AUDUSD.CASH.IP
2017-07-17 13:56:38.944 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: CX.D.AUDUSD.CASH.IP
2017-07-17 13:56:39.668 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: IX.D.NASDAQ.IFD.IP
2017-07-17 13:56:39.670 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: IX.D.NASDAQ.IFD.IP
2017-07-17 13:56:40.657 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: IX.D.SPTRD.IFD.IP
2017-07-17 13:56:40.658 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: IX.D.SPTRD.IFD.IP
2017-07-17 13:56:41.183 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer tick updates for market: IX.D.DOW.IFD.IP
2017-07-17 13:56:41.184 [main] INFO com.danlind.igz.handler.AssetHandler - Subscribing to Lightstreamer volume updates for market: IX.D.DOW.IFD.IP
2017-07-17 13:56:41.314 [main] ERROR c.danlind.igz.adapter.RestApiAdapter - Exception when getting historic prices for epic IX.D.DOW.IFD.IP, error was {"errorCode":"error.public-api.exceeded-api-key-allowance"}
org.springframework.web.client.HttpClientErrorException: 403 Forbidden

(I switched back from DEBUG to INFO for the above log as debug is extremely verbose)

I wonder if each of these subscription requests (I'm counting 19 or 20 of these before the error) is just one restAPI request or if there are a few more behind the scenes? If so, the 30 per minute limit could be hit. I guess this could only be avoided by active request pacing by the plugin.

Top
#467136 - 07/17/17 21:57 Re: IG plugin initial release [Re: mhdus]
Dalla Offline
Member

Registered: 02/24/17
Posts: 211
I realize that I had a discussion with IG support some time ago when I had a similar issue. Basically their logs were saying that I was hitting the application limit of 60 requests per second even though I was nowhere near that rate.

I suggest you contact IG support just to see if you are running into that same issue. Provide them with the api key you are using, date, time and time zone when you hit the limit.
If it helps, the guy who helped was named Matt Bailey

Top
#467146 - 07/18/17 09:54 Re: IG plugin initial release [Re: Dalla]
Dalla Offline
Member

Registered: 02/24/17
Posts: 211
BTW, if you want to count the exact number of requests being made, you should be able to do that with the DEBUG setting. There are a couple of other besides the ones that your are seeing (starting account subscription, getting account time zone, the actual login etc), but since you are not close to 60 this should not be the issue.

In my conversation with IG I actually mentioned the Per-account non-trading requests per minute: 30, but Matt was positive that this was not the limit I was hitting according to the logs.

Top
#467147 - 07/18/17 10:15 Re: IG plugin initial release [Re: Dalla]
mhdus Offline
Junior Member

Registered: 07/19/16
Posts: 72
Loc: Düsseldorf, Germany
Ok, then this may well explain the issue. Even based on the INFO messages I'm counting 28 requests (2x13 for the instruments +2 for account and heartbeat). So if there are a few more the 30 per minute is reached. I don't think they put this in the FAQ and don't enforce it. Maybe they relaxed the limit for you individually as you are developing a plugin that has good potential to boost their client base?
I am in contact with IG support, let's see what they respond...

Top
#467149 - 07/18/17 11:41 Re: IG plugin initial release [Re: mhdus]
Dalla Offline
Member

Registered: 02/24/17
Posts: 211
That sounds familiar also. I was close to 30, but not really at 30 when counting the requests.

Basically support said that my application API limit was also set to 30 rather than 60 for some reason. So they increased it to 60, and after that I've not had any problems.

To be honest I find the FAQ a bit confusing on the limits, specifically
Per-app non-trading requests per minute: 60
Per-account non-trading requests per minute: 30

To me it seems like the per-account limit of 30 would always be hit before the per-app limit, since all app keys belongs to an account.
I've sent a mail to support asking them to clarify this as well, I'll post back here when I get an answer.

Top
Page 8 of 13 < 1 2 ... 6 7 8 9 10 12 13 >



Gamestudio download | chip programmers | Zorro platform | shop | resources | magazine | manual | support faq | bugs

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) 3dgamestudio.net