@LorantVari31 Posting this publicly just in case anyone else is having the same issue. I’m using the Platform Transmit API EA then needs MT4 website access: to api4-general.collective2.com and occasionally I’ll get this error. I"m using a VPS with a great monitored connection that’s been solid since I started (reports 100% uptime since this before this install).
Question: Why does this happen? It states that its ‘self-correcting’, is it? and how often is it polling to reconnect? I’ve set this MT4 installation to reboot nightly just to reset everything so I dont see it often but any idea what might be happening? (also if I see it and restart the terminal, everything is fine. I’ve never seen it pop up on a terminal reboot)
Thanks for the screenshot. The key detail is the sequence in the MT4 log.
MetaTrader returned WebRequest 5203 at 17:05:16.149, the EA classified the next failure as retryable at 17:05:16.165, and then the automated sync completed successfully at 17:05:16.181.
So in this screenshot the EA did self-correct. The failed WebRequest did not leave the EA disconnected, and the next sync completed normally.
Error 5203 is generated locally by MetaTrader’s WebRequest layer before a normal HTTP response is received. It is not an HTTP error returned by the C2 API server. If the same terminal normally syncs successfully, this usually points to a temporary MT4 WebRequest/terminal/network state rather than a permanent configuration or strategy connection problem.
The EA keeps running after this type of retryable transport failure. Regular automated sync runs every 60 seconds, with local retry/backoff after retryable sync failures. Occasional single failures followed by a successful sync should recover automatically; repeated failures would need the PlatformTransmit trace log and MT4 Experts/Journal logs for the same timestamp.
Also, I recommend updating to the latest PlatformTransmit build. Newer builds handle this case less intrusively, so transient WebRequest errors like this are logged and retried instead of presenting a blocking popup.
1 Like
Got It. Will update ASAP - Thnx! for the quick reply (also that it auto-recovers pretty cleanly. I’m on a self-healing algo kick. Nice when edge cases fix themselves…)
@LorantVari31 Hmmm… upgraded to the new MT4 API and got this error (never seen before) and the EA didnt close the GBPUSD trade on C2. I installed the EA with 2 existing trades so is that the problem? The error seems to be for a different reason (was gonna wait for new orders but this error seems unrelated to that). I rebooted and the order closed on C2. Dont know what happens when the last ‘existing’ order closes or a ‘new’ one appears. FYI:
Thanks for the report. This was not caused by installing the EA with existing trades. C2 temporarily had no bid price for GBPUSD, so the closing order was rejected. Restarting the EA triggered another sync, and the trade closed successfully. New trades and future position changes should sync normally.
@LorantVari31 OK. Will this situation auto-recover? I was checking C2 vs the source and noticed the out of sync state and rebooted. It failed 2X. Would it have recovered without my intervention?
Yes. MT4 automatically retries transient sync failures, so it likely would have recovered without a reboot. Only a non-retryable API or connection error requires intervention.
1 Like
@LorantVari31 Posting this FYI - I had another Webrequest Error with the MT4 version so I decided to switch to the MT5 ‘service’. It seemed to be working well until it had to close a partial trade. Is that a limitation of the MT5 version? Switching back to MT4… (also before the WebRequest versions I NEVER had a PT issue for years using the old Platform Transmit. I still have my old pre- WR plugin. Is that still an option?)
Also looks like the C2PT RAW positions 0 & 1 were correct (0.30, 0.60) but on the C2 platform it was still 0.60 and 0.60. - I switched back to MT4 with no copied trades and it closed both - of course I bet both trade print BIGLY since they’re disconnected - 
Thanks for the detailed report and screenshot — they helped us identify what happened.
Partial position closes are supported by the current MT5 service. In this case, MT5 correctly detected the reduction from 0.60 to 0.30 and sent the reduced position size to Collective2. However, Collective2 returned “Service Temporarily Unavailable,” so the partial close was not applied on the C2 side.
We also found a problem in PlatformTransmit’s response handling: this type of rejected update could be treated as completed instead of remaining pending for another attempt. We have prepared a fix across all current PlatformTransmit clients. Rejected updates will no longer count as successful, and temporary server errors will be retried automatically.
The confusing first 0.60 line in the MT5 log was caused by an older position snapshot being displayed before the current positions were read. That logging issue has also been corrected.
We do not recommend returning to the old pre-WebRequest plugin. It uses the legacy connection path, is no longer the supported version, and may conflict with current PlatformTransmit connections.
The MT4 WebRequest error is a separate issue. If you can send us the full MT4 trace file containing that error, we will investigate it as well.
We’re sorry for the trouble, especially given how reliably the older version worked for you for many years. Thank you for reporting this with enough detail for us to locate the problem.
@LorantVari31 Thnx! I forgot the reason for switching from the old PT was internal changes. You mentioned edits so is the MT5 plugin ‘fixed’? Def willing to give MT5 another try since on my end it appeared to work flawlessly. Will I need a new MT5 client or is this a C2-side issue?
The WebRequest error on MT4 is pretty intermittent. So if/when it happens again I’ll zap you the trade log and screenshots for diagnose.