gruelbox / orko Goto Github PK
View Code? Open in Web Editor NEWTrade on and script multiple crypto exchanges from a single user interface on desktop and mobile. In development.
License: GNU Affero General Public License v3.0
Trade on and script multiple crypto exchanges from a single user interface on desktop and mobile. In development.
License: GNU Affero General Public License v3.0
Better maintained, cleaner
There are a couple of modules where we're depending on jitpacked snapshots.
So I can remain logged in on multiple machines
Need to improve test coverage.
Should make the project appear well in the Heroku app catalogue: https://elements.heroku.com/buttons
Probably very unsafe at the moment. Particularly risky with I18n... risk that 2,111 might get interpreted as [2, 111], for example.
https://github.com/text-mask/text-mask https://github.com/s-yadav/react-number-format
Plus using the number HTML type is problematic. Investigate a decent react number component
fetchUtil.js:27 GET /api/exchanges 401 (Unauthorized)
nn @ fetchUtil.js:27
(anonymous) @ auth.js:14
w @ runtime.js:62
(anonymous) @ runtime.js:288
e.(anonymous function) @ runtime.js:114
r @ asyncToGenerator.js:3
s @ asyncToGenerator.js:25
(anonymous) @ asyncToGenerator.js:32
(anonymous) @ asyncToGenerator.js:21
(anonymous) @ auth.js:15
(anonymous) @ actions.js:36
w @ runtime.js:62
(anonymous) @ runtime.js:288
e.(anonymous function) @ runtime.js:114
r @ asyncToGenerator.js:3
s @ asyncToGenerator.js:25
(anonymous) @ asyncToGenerator.js:32
(anonymous) @ asyncToGenerator.js:21
(anonymous) @ actions.js:34
(anonymous) @ index.js:8
(anonymous) @ middleware.js:40
dispatch @ redux.js:613
(anonymous) @ actions.js:25
w @ runtime.js:62
(anonymous) @ runtime.js:288
e.(anonymous function) @ runtime.js:114
r @ asyncToGenerator.js:3
s @ asyncToGenerator.js:25
Promise.then (async)
r @ asyncToGenerator.js:13
s @ asyncToGenerator.js:25
(anonymous) @ asyncToGenerator.js:32
(anonymous) @ asyncToGenerator.js:21
(anonymous) @ actions.js:8
(anonymous) @ index.js:8
(anonymous) @ middleware.js:40
value @ AuthContainer.js:11
ja @ react-dom.production.min.js:5304
Pa @ react-dom.production.min.js:5059
Da @ react-dom.production.min.js:5026
Ma @ react-dom.production.min.js:4961
ea @ react-dom.production.min.js:4887
Fa @ react-dom.production.min.js:5491
Ha @ react-dom.production.min.js:5499
Ba.render @ react-dom.production.min.js:5689
(anonymous) @ react-dom.production.min.js:5774
Ia @ react-dom.production.min.js:5421
$a @ react-dom.production.min.js:5773
render @ react-dom.production.min.js:5802
494 @ index.js:7
f @ bootstrap:78
286 @ main.64691239.chunk.js:1
f @ bootstrap:78
t @ bootstrap:45
r @ bootstrap:32
(anonymous) @ main.64691239.chunk.js:1
?frameElementId=tradingview_8557e&symbol=BITTREX%3ADOGEBTC&interval=240&hidesidetoolbar=0&saveimage=1&toolbarbg=f1f3f6&studies=RSI%40tv-basicstudies&theme=Dark&style=1&timezone=UTC&showpopupbutton=1&studies_overrides={}&overrides={}&enabled_features=[]&disabled_features=[]&showpopupbutton=1&locale=en&utm_source=oco-testing.herokuapp.com&utm_medium=widget&utm_campaign=chart&utm_term=BITTREX%3ADOGEBTC:165 [Violation] Avoid using document.write().
(anonymous) @ ?frameElementId=tradingview_8557e&symbol=BITTREX%3ADOGEBTC&interval=240&hidesidetoolbar=0&saveimage=1&toolbarbg=f1f3f6&studies=RSI%40tv-basicstudies&theme=Dark&style=1&timezone=UTC&showpopupbutton=1&studies_overrides={}&overrides={}&enabled_features=[]&disabled_features=[]&showpopupbutton=1&locale=en&utm_source=oco-testing.herokuapp.com&utm_medium=widget&utm_campaign=chart&utm_term=BITTREX%3ADOGEBTC:165
(anonymous) @ ?frameElementId=tradingview_8557e&symbol=BITTREX%3ADOGEBTC&interval=240&hidesidetoolbar=0&saveimage=1&toolbarbg=f1f3f6&studies=RSI%40tv-basicstudies&theme=Dark&style=1&timezone=UTC&showpopupbutton=1&studies_overrides={}&overrides={}&enabled_features=[]&disabled_features=[]&showpopupbutton=1&locale=en&utm_source=oco-testing.herokuapp.com&utm_medium=widget&utm_campaign=chart&utm_term=BITTREX%3ADOGEBTC:172
DOGE:1 [DOM] Input elements should have autocomplete attributes (suggested: "current-password"): (More info: https://goo.gl/9p2vKq) <input placeholder="Enter password" type="password" value>
35[Violation] Added non-passive event listener to a scroll-blocking <some> event. Consider marking event handler as 'passive' to make the page more responsive. See <URL>
embed_widget.d0a8194a37389d58a0ca.js:127 [Violation] Added non-passive event listener to a scroll-blocking 'wheel' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
setup @ embed_widget.d0a8194a37389d58a0ca.js:127
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
bind @ vendors_embed.7663894d330dac3c742e.js:110
mousewheel @ embed_widget.d0a8194a37389d58a0ca.js:127
n._setElement @ embed_widget.d0a8194a37389d58a0ca.js:595
_options.body.subscribe.callWithLast @ embed_widget.d0a8194a37389d58a0ca.js:593
t.subscribe @ embed_widget.d0a8194a37389d58a0ca.js:8
n @ embed_widget.d0a8194a37389d58a0ca.js:593
z @ embed_widget.d0a8194a37389d58a0ca.js:619
G @ embed_widget.d0a8194a37389d58a0ca.js:620
le @ embed_widget.d0a8194a37389d58a0ca.js:621
e.exports @ embed_widget.d0a8194a37389d58a0ca.js:623
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:642
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:645
c @ runtime.34e8418f20a130a7d096.js:1
d @ runtime.34e8418f20a130a7d096.js:1
a @ runtime.34e8418f20a130a7d096.js:1
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:1
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:443
n._makeTimeAxisWidget @ embed_widget.d0a8194a37389d58a0ca.js:609
n._makeDefaultGui @ embed_widget.d0a8194a37389d58a0ca.js:604
n._init @ embed_widget.d0a8194a37389d58a0ca.js:595
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:610
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:275
o @ embed_widget.d0a8194a37389d58a0ca.js:568
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:606
n._makeDefaultModel @ embed_widget.d0a8194a37389d58a0ca.js:607
n._init @ embed_widget.d0a8194a37389d58a0ca.js:596
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:610
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:275
o @ embed_widget.d0a8194a37389d58a0ca.js:568
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:606
n._makeDefaultModel @ embed_widget.d0a8194a37389d58a0ca.js:607
n._init @ embed_widget.d0a8194a37389d58a0ca.js:596
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:610
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
o @ embed_widget.d0a8194a37389d58a0ca.js:569
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:606
n._makeDefaultModel @ embed_widget.d0a8194a37389d58a0ca.js:607
n._init @ embed_widget.d0a8194a37389d58a0ca.js:596
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:610
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:595
t.fire @ embed_widget.d0a8194a37389d58a0ca.js:5
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:606
n._makeDefaultModel @ embed_widget.d0a8194a37389d58a0ca.js:607
n._init @ embed_widget.d0a8194a37389d58a0ca.js:596
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:610
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:4
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:569
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:275
o @ embed_widget.d0a8194a37389d58a0ca.js:568
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:275
o @ embed_widget.d0a8194a37389d58a0ca.js:568
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
o @ embed_widget.d0a8194a37389d58a0ca.js:569
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n @ embed_widget.d0a8194a37389d58a0ca.js:465
n._makePaneWidgetsAndSeparators @ embed_widget.d0a8194a37389d58a0ca.js:609
n._updateGui @ embed_widget.d0a8194a37389d58a0ca.js:607
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:4
(anonymous) @ embed_widget.d0a8194a37389d58a0ca.js:569
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
add @ vendors_embed.7663894d330dac3c742e.js:107
(anonymous) @ vendors_embed.7663894d330dac3c742e.js:110
each @ vendors_embed.7663894d330dac3c742e.js:100
each @ vendors_embed.7663894d330dac3c742e.js:99
on @ vendors_embed.7663894d330dac3c742e.js:110
e._init @ embed_widget.d0a8194a37389d58a0ca.js:274
e @ embed_widget.d0a8194a37389d58a0ca.js:272
n.updateLayout @ chart-widget-gui.6d8f5a3d650ae0c07abf.js:6
n._update @ embed_widget.d0a8194a37389d58a0ca.js:605
t @ embed_widget.d0a8194a37389d58a0ca.js:606
vendors_embed.7663894d330dac3c742e.js:107 [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
Needs to provide:
Not been using this myself and I don't doubt it's broken now.
Experiment complete. It's just a PITA.
Configurable filters for Telegram alerts, status level etc
Need #17 in place first
Then need to investigate kline feeds for all the exchanges
Would prioritise KuCoin or other exchanges where hosted TradingView doesn't support coins
Main reason would be to show orders and fills on the graph
Discussed here:
Won't be bothering unless anyone feels strongly about this.
If... this... then... that... or... that... then.... the other
Requires some more job primitives and a nice, slick UI, but the majority of the back-end support is already there.
The mobile UI at the moment is a bit of an afterthought. It should be "thumbable", easy to use on the move and provide comfortable access to everything (except maybe scripting and other similar features). At the moment it's a bit like BitMex (just stack the panels and make the user scroll around) but I think we can do better than that.
React Native is a possibility, but that's a big change.
Combine DB stateful timestamps, periodic checks with stream
Plan is to make the app effectively multi-tenant by using an in-memory DB and localising persistence to each connection, while expanding the scope of paper trading to demonstrate the entire application and allow more thorough end-to-end testing.
NotAuthenticated
component so that it can be closed with a "Use paper trading" button (state saved only to session). Apply it to the trade selector as well.NotAuthenticated
component. It looks a bit dodgy when repeated in three places.NonceException
quietly in background processDuplicates #369
... or claiming it is. Could be a UI glitch
Back when the architecture was more microservicey, Docker was the only simple way to deploy the application. This was abandoned as being unnecessarily complex for the use case, but Docker support was removed at the same time (since there was no driver for docker support for the single-app build at the time).
Docker support should be re-introduced and published to Docker Hub with each release, suitably documented and configurable. A simple alpine+openjdk8 image should be quite sufficient.
It would be sensible, having done so, to funnel Heroku deployment via Docker, to ensure consistent architecture. This would also ensure that Docker and Heroku users will be cross-testing.
More info here:
https://devcenter.heroku.com/categories/deploying-with-docker
There is some crossover with #115 here. Do we build the docker image directly from source or from an installer? The latter would have the advantage, again, of making sure installer-based builds are being regularly tested without any additional effort.
Shows as not validating on the form element when actually valid If you clear the field, it automatically re-inserts the existing value
Need to familiarise myself with Jest, JSDOM etc
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.