hedgequantx 1.2.128 → 1.2.129
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB
|
|
3
|
+
iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl
|
|
4
|
+
cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV
|
|
5
|
+
BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw
|
|
6
|
+
MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV
|
|
7
|
+
BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU
|
|
8
|
+
aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy
|
|
9
|
+
dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK
|
|
10
|
+
AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B
|
|
11
|
+
3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY
|
|
12
|
+
tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/
|
|
13
|
+
Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2
|
|
14
|
+
VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT
|
|
15
|
+
79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6
|
|
16
|
+
c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT
|
|
17
|
+
Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l
|
|
18
|
+
c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee
|
|
19
|
+
UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE
|
|
20
|
+
Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd
|
|
21
|
+
BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G
|
|
22
|
+
A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF
|
|
23
|
+
Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO
|
|
24
|
+
VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3
|
|
25
|
+
ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs
|
|
26
|
+
8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR
|
|
27
|
+
iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze
|
|
28
|
+
Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ
|
|
29
|
+
XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/
|
|
30
|
+
qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB
|
|
31
|
+
VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB
|
|
32
|
+
L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG
|
|
33
|
+
jjxDah2nGN59PRbxYvnKkKj9
|
|
34
|
+
-----END CERTIFICATE-----
|
|
@@ -7,7 +7,18 @@ const RITHMIC_ENDPOINTS = {
|
|
|
7
7
|
TEST: 'wss://rituz00100.rithmic.com:443',
|
|
8
8
|
PAPER: 'wss://ritpa11120.11.rithmic.com:443',
|
|
9
9
|
LIVE: 'wss://ritpz01000.01.rithmic.com:443',
|
|
10
|
-
|
|
10
|
+
// Production gateways for prop firms (discovered via RequestRithmicSystemGatewayInfo)
|
|
11
|
+
CHICAGO: 'wss://rprotocol.rithmic.com:443', // Chicago Area (primary for US)
|
|
12
|
+
EUROPE: 'wss://rprotocol-ie.rithmic.com:443', // Europe (Ireland)
|
|
13
|
+
FRANKFURT: 'wss://rprotocol-de.rithmic.com:443', // Frankfurt
|
|
14
|
+
SINGAPORE: 'wss://rprotocol-sg.rithmic.com:443', // Singapore
|
|
15
|
+
SYDNEY: 'wss://rprotocol-au.rithmic.com:443', // Sydney
|
|
16
|
+
TOKYO: 'wss://rprotocol-jp.rithmic.com:443', // Tokyo
|
|
17
|
+
HONG_KONG: 'wss://rprotocol-hk.rithmic.com:443', // Hong Kong
|
|
18
|
+
SEOUL: 'wss://rprotocol-kr.rithmic.com:443', // Seoul
|
|
19
|
+
MUMBAI: 'wss://rprotocol-in.rithmic.com:443', // Mumbai
|
|
20
|
+
SAO_PAULO: 'wss://rprotocol-br.rithmic.com:443', // Sao Paulo
|
|
21
|
+
CAPE_TOWN: 'wss://rprotocol-za.rithmic.com:443', // Cape Town
|
|
11
22
|
};
|
|
12
23
|
|
|
13
24
|
// System names for PropFirms
|
|
@@ -26,27 +26,28 @@ class RithmicService extends EventEmitter {
|
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* Get PropFirm configuration
|
|
29
|
+
* Note: Apex and other prop firms use the Chicago gateway (rprotocol.rithmic.com), NOT Paper Trading endpoint
|
|
29
30
|
*/
|
|
30
31
|
getPropFirmConfig(key) {
|
|
31
32
|
const propfirms = {
|
|
32
|
-
'apex': { name: 'Apex Trader Funding', systemName: 'Apex', defaultBalance: 300000 },
|
|
33
|
-
'apex_rithmic': { name: 'Apex Trader Funding', systemName: 'Apex', defaultBalance: 300000 },
|
|
34
|
-
'topstep_r': { name: 'Topstep (Rithmic)', systemName: RITHMIC_SYSTEMS.TOPSTEP, defaultBalance: 150000 },
|
|
35
|
-
'bulenox_r': { name: 'Bulenox (Rithmic)', systemName: RITHMIC_SYSTEMS.BULENOX, defaultBalance: 150000 },
|
|
36
|
-
'earn2trade': { name: 'Earn2Trade', systemName: RITHMIC_SYSTEMS.EARN_2_TRADE, defaultBalance: 150000 },
|
|
37
|
-
'mescapital': { name: 'MES Capital', systemName: RITHMIC_SYSTEMS.MES_CAPITAL, defaultBalance: 150000 },
|
|
38
|
-
'tradefundrr': { name: 'TradeFundrr', systemName: RITHMIC_SYSTEMS.TRADEFUNDRR, defaultBalance: 150000 },
|
|
39
|
-
'thetradingpit': { name: 'The Trading Pit', systemName: RITHMIC_SYSTEMS.THE_TRADING_PIT, defaultBalance: 150000 },
|
|
40
|
-
'fundedfutures': { name: 'Funded Futures Network', systemName: RITHMIC_SYSTEMS.FUNDED_FUTURES_NETWORK, defaultBalance: 150000 },
|
|
41
|
-
'propshop': { name: 'PropShop Trader', systemName: RITHMIC_SYSTEMS.PROPSHOP_TRADER, defaultBalance: 150000 },
|
|
42
|
-
'4proptrader': { name: '4PropTrader', systemName: RITHMIC_SYSTEMS.FOUR_PROP_TRADER, defaultBalance: 150000 },
|
|
43
|
-
'daytraders': { name: 'DayTraders.com', systemName: RITHMIC_SYSTEMS.DAY_TRADERS, defaultBalance: 150000 },
|
|
44
|
-
'10xfutures': { name: '10X Futures', systemName: RITHMIC_SYSTEMS.TEN_X_FUTURES, defaultBalance: 150000 },
|
|
45
|
-
'lucidtrading': { name: 'Lucid Trading', systemName: RITHMIC_SYSTEMS.LUCID_TRADING, defaultBalance: 150000 },
|
|
46
|
-
'thrivetrading': { name: 'Thrive Trading', systemName: RITHMIC_SYSTEMS.THRIVE_TRADING, defaultBalance: 150000 },
|
|
47
|
-
'legendstrading': { name: 'Legends Trading', systemName: RITHMIC_SYSTEMS.LEGENDS_TRADING, defaultBalance: 150000 },
|
|
33
|
+
'apex': { name: 'Apex Trader Funding', systemName: 'Apex', defaultBalance: 300000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
34
|
+
'apex_rithmic': { name: 'Apex Trader Funding', systemName: 'Apex', defaultBalance: 300000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
35
|
+
'topstep_r': { name: 'Topstep (Rithmic)', systemName: RITHMIC_SYSTEMS.TOPSTEP, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
36
|
+
'bulenox_r': { name: 'Bulenox (Rithmic)', systemName: RITHMIC_SYSTEMS.BULENOX, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
37
|
+
'earn2trade': { name: 'Earn2Trade', systemName: RITHMIC_SYSTEMS.EARN_2_TRADE, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
38
|
+
'mescapital': { name: 'MES Capital', systemName: RITHMIC_SYSTEMS.MES_CAPITAL, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
39
|
+
'tradefundrr': { name: 'TradeFundrr', systemName: RITHMIC_SYSTEMS.TRADEFUNDRR, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
40
|
+
'thetradingpit': { name: 'The Trading Pit', systemName: RITHMIC_SYSTEMS.THE_TRADING_PIT, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
41
|
+
'fundedfutures': { name: 'Funded Futures Network', systemName: RITHMIC_SYSTEMS.FUNDED_FUTURES_NETWORK, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
42
|
+
'propshop': { name: 'PropShop Trader', systemName: RITHMIC_SYSTEMS.PROPSHOP_TRADER, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
43
|
+
'4proptrader': { name: '4PropTrader', systemName: RITHMIC_SYSTEMS.FOUR_PROP_TRADER, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
44
|
+
'daytraders': { name: 'DayTraders.com', systemName: RITHMIC_SYSTEMS.DAY_TRADERS, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
45
|
+
'10xfutures': { name: '10X Futures', systemName: RITHMIC_SYSTEMS.TEN_X_FUTURES, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
46
|
+
'lucidtrading': { name: 'Lucid Trading', systemName: RITHMIC_SYSTEMS.LUCID_TRADING, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
47
|
+
'thrivetrading': { name: 'Thrive Trading', systemName: RITHMIC_SYSTEMS.THRIVE_TRADING, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
48
|
+
'legendstrading': { name: 'Legends Trading', systemName: RITHMIC_SYSTEMS.LEGENDS_TRADING, defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.CHICAGO },
|
|
48
49
|
};
|
|
49
|
-
return propfirms[key] || { name: key, systemName: 'Rithmic Paper Trading', defaultBalance: 150000 };
|
|
50
|
+
return propfirms[key] || { name: key, systemName: 'Rithmic Paper Trading', defaultBalance: 150000, gateway: RITHMIC_ENDPOINTS.PAPER };
|
|
50
51
|
}
|
|
51
52
|
|
|
52
53
|
/**
|
|
@@ -57,14 +58,11 @@ class RithmicService extends EventEmitter {
|
|
|
57
58
|
// Connect to ORDER_PLANT
|
|
58
59
|
this.orderConn = new RithmicConnection();
|
|
59
60
|
|
|
60
|
-
//
|
|
61
|
-
|
|
62
|
-
if (this.propfirmKey === 'apex' || this.propfirmKey === 'apex_rithmic') {
|
|
63
|
-
endpoint = RITHMIC_ENDPOINTS.LIVE; // Apex uses live server
|
|
64
|
-
}
|
|
61
|
+
// Use propfirm-specific gateway (Chicago for Apex and most prop firms)
|
|
62
|
+
const gateway = this.propfirm.gateway || RITHMIC_ENDPOINTS.CHICAGO;
|
|
65
63
|
|
|
66
64
|
const config = {
|
|
67
|
-
uri:
|
|
65
|
+
uri: gateway,
|
|
68
66
|
systemName: this.propfirm.systemName,
|
|
69
67
|
userId: username,
|
|
70
68
|
password: password,
|
|
@@ -145,14 +143,11 @@ class RithmicService extends EventEmitter {
|
|
|
145
143
|
try {
|
|
146
144
|
this.pnlConn = new RithmicConnection();
|
|
147
145
|
|
|
148
|
-
//
|
|
149
|
-
|
|
150
|
-
if (this.propfirmKey === 'apex' || this.propfirmKey === 'apex_rithmic') {
|
|
151
|
-
endpoint = RITHMIC_ENDPOINTS.LIVE; // Apex uses live server
|
|
152
|
-
}
|
|
146
|
+
// Use propfirm-specific gateway (Chicago for Apex and most prop firms)
|
|
147
|
+
const gateway = this.propfirm.gateway || RITHMIC_ENDPOINTS.CHICAGO;
|
|
153
148
|
|
|
154
149
|
const config = {
|
|
155
|
-
uri:
|
|
150
|
+
uri: gateway,
|
|
156
151
|
systemName: this.propfirm.systemName,
|
|
157
152
|
userId: username,
|
|
158
153
|
password: password,
|