bitfinexcom / bfx-hf-ui Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
These were omitted from the design after 2 iterations of the chart, and need to be added back in. The other panels in the MarketData
page expose exchange/market dropdowns as expected. Charts do not.
NOTE: The incoming redesign will replace this, hence this needs to be done before.
Allow the user to save a populated order form for later restoration. Very useful in testing when having to enter the same details over and over again, but it has also been requested multiple times by multiple users.
Should grab & save all field state into a 'profile' or so
After entering the API Key/Secret on a fresh install, the order form does not redirect from the credential submit form, even though the server successfully connections to Bitfinex.
After a restart it works as expected.
This issue was soon in the compiled electron app.
Steps to reproduce:
Err:
Orderbook will freeze as if no data is being received from websocket. This might be caused by the websocket which attempts to unsubscribe from the websocket whenever you change page.
The HF UI successfully connects to the bitfinex.com UI but is unable to submit orders even though submitting orders works correctly via the HF-UI application.
Steps to reproduce:
Open HF-UI electron application
Click on an algo order
Submit API credentials
Navigate to bitfinex.com
Log-ing
Submit algo order
Results:
HF shows that its connected however the order request times out and nothing happens.
Expected:
Algo order is submitted and picked up by the UI
Clicking on a strategy trade in the table should center it on the chart, and optionally open the trade info overlay (as if hovering).
Requires bitfinexcom/bfx-hf-chart#5
This currently exists in the codebase but is disabled as it was overlooked in the new design. Add it back in.
When the websocket is unable to authenticate the users credentials there is no way to change/update them without deleting the entire database.
Steps to reproduce:
Expected:
See option to change API keys since they are not working
Actual:
A message saying "connecting to bitfinec" is displayed indefinitely and does not close.
This has been planned for ages, and is not too difficult, just low priority. We need to add an UI allowing the user to provision a VPS (given the necessary API key/secret) and deploy an instance of bfx-hf-algo-server
on it with a systemd service file (enabled and started).
Includes Bitfinex hosting!
bfx-hf-server
to use remote instance, and kill local one
Low priority but requested by several people; we need a hotkey system for order execution and app navigation. This should be configurable by the user.
We need to refactor all component css to export colors/fonts/etc into an own theme, for easier customization in the future.
As we have a complete redesign coming up next month, the system needs to be flexible enough to accommodate it.
classic-dark
themeclassic-light
example themeAside from #83, the notifications in general feel bloated. The sidebar expands very far out into the available screen space, and the notifications themselves have large dimensions.
Make them slicker, rethink UI/UX.
Placeholder; details coming soon.
The HF UI needs to provide a table w/ a list of all active algo orders, along with the ability to start/stop them, edit parameters, and view historical atomic trade activity.
This currently exists in the codebase but is disabled as it was overlooked in the new design. Add it back in.
This was present early in the life of the HF UI but removed before it became a proper app.
Add a chart somewhere in the StrategyEditor
page that shows Profit/Loss over time.
Low priority; details WIP
bfx-hf-chart
exposes save/load functionality for colors but they are not connected to the settings modal. A color picker should be used, and some indication of which line each color is for (where applicable)
Trying to run the app on my laptop, I did clone the repo and follow the install procedure.
npm run build
went fine but npm run start-server
is crashing.
Error:
$> npm run start-server
> [email protected] start-server /Users/doweig/dev/satoshi_cenobium/bfx-hf-ui
> cross-env concurrently --kill-others "npm run start-api-server"
events.js:167
throw er; // Unhandled 'error' event
^
Error: spawn concurrently ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:232:19)
at onErrorNT (internal/child_process.js:407:16)
at process._tickCallback (internal/process/next_tick.js:63:19)
at Function.Module.runMain (internal/modules/cjs/loader.js:744:11)
at startup (internal/bootstrap/node.js:285:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)
Emitted 'error' event at:
at Process.ChildProcess._handle.onexit (internal/child_process.js:238:12)
at onErrorNT (internal/child_process.js:407:16)
[... lines matching original stack trace ...]
at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)
Full log:
$> cat /Users/doweig/.npm/_logs/2020-01-20T08_51_23_455Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node',
1 verbose cli '/usr/local/bin/npm',
1 verbose cli 'run',
1 verbose cli 'start-server' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'prestart-server', 'start-server', 'poststart-server' ]
5 info lifecycle [email protected]~prestart-server: [email protected]
6 info lifecycle [email protected]~start-server: [email protected]
7 verbose lifecycle [email protected]~start-server: unsafe-perm in lifecycle true
8 verbose lifecycle [email protected]~start-server: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/doweig/dev/satoshi_cenobium/bfx-hf-ui/node_modules/.bin:/Users/doweig/dev/satoshi_cenobium/bitcoin-0.17.1/bin:/Users/doweig/dev/satoshi_cenobium/lnd-darwin-amd64-v0.7.0-beta:/Users/doweig/.yarn/bin:/Users/doweig/.config/yarn/global/node_modules/.bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
9 verbose lifecycle [email protected]~start-server: CWD: /Users/doweig/dev/satoshi_cenobium/bfx-hf-ui
10 silly lifecycle [email protected]~start-server: Args: [ '-c',
10 silly lifecycle 'cross-env concurrently --kill-others "npm run start-api-server"' ]
11 silly lifecycle [email protected]~start-server: Returned: code: 1 signal: null
12 info lifecycle [email protected]~start-server: Failed to exec start-server script
13 verbose stack Error: [email protected] start-server: `cross-env concurrently --kill-others "npm run start-api-server"`
13 verbose stack Exit status 1
13 verbose stack at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
13 verbose stack at EventEmitter.emit (events.js:182:13)
13 verbose stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack at ChildProcess.emit (events.js:182:13)
13 verbose stack at maybeClose (internal/child_process.js:962:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
14 verbose pkgid [email protected]
15 verbose cwd /Users/doweig/dev/satoshi_cenobium/bfx-hf-ui
16 verbose Darwin 19.2.0
17 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "start-server"
18 verbose node v10.13.0
19 verbose npm v6.10.1
20 error code ELIFECYCLE
21 error errno 1
22 error [email protected] start-server: `cross-env concurrently --kill-others "npm run start-api-server"`
22 error Exit status 1
23 error Failed at the [email protected] start-server script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
Versions:
➜ bfx-hf-ui git:(master) ✗ node --version
v10.13.0
➜ bfx-hf-ui git:(master) ✗ npm --version
6.10.1
➜ bfx-hf-ui git:(master) ✗ yarn --version
1.13.0
on MacOS 10.15.2
Proxy of bitfinexcom/bfx-hf-chart#8 for scheduling
From bitfinexcom/bfx-hf-chart#4 to be scheduled for release here.
Has been seen in the wild when 0 candles are returned; the data server never sends the data.sync.end
packet
As the packet is sent out before candles are queried from the DB, the 0 candle return is likely unrelated. Relevant logic: https://github.com/bitfinexcom/bfx-hf-data-server/blob/master/lib/cmds/get_candles.js#L64
The UI must be unlocked with a password, but there is no current way to lock it aside from closing the app entirely.
Add a lock button
From bitfinexcom/bfx-hf-chart#3 to be scheduled for release here.
Add a button to bfx-hf-chart
to trigger a modal allowing the user to select a specific time to jump to. Should use a date/time picker.
This includes both the UI side (multiple pages) and bfx-hf-server
internal updates.
I can't execute the binary on Mac OS. Get the error The application “The Honey Framework” can’t be opened.
MacOS version: 10.15.2
The honey version: v3.0.3 (from github release zip) https://github.com/bitfinexcom/bfx-hf-ui/releases
From bitfinexcom/bfx-hf-indicators#48 to be scheduled for release here
From bitfinexcom/bfx-hf-algo#24 to be scheduled for release here.
Currently axios
is used to pull the latest version info from the Github repo in order to render the version & upgrade button in the StatusBar
component here:
This needs to be refactored into the redux system, so we don't make the GET request on every render of StatusBar
(not very efficient).
meta
)StatusBar.container
to pass the value as a propStatusBar
to use the prop.Likely fixed by #45 but needs review
When offline we should theoretically be able to view historical candle data, as it is synced locally. However the app fails to start initially due to being unable to fetch market meta data.
Every order is cancelled upon server close or losing internet connection, and I am looking into disabling this behavior.
It would be fine if only algo-type orders would be cancelled as I can't have my long term limit orders deleted everytime.
Any hint on where this behavior is coded ? , I just can't find it
Proxy of bitfinexcom/bfx-hf-chart#6 for scheduling
See title
This will consist of multiple pages, and the design & final layout are still pending. However, this is a rough draft of the data that could/should be shown for each element:
The user should be able to optionally disable the websocket kill switch within their settings.
The very first version of bfx-hf-algo
had this, but was rewritten and support for it was dropped in the process. Would be very useful to have again.
The user should be able to set at least the following limits:
bfx-hf-algo
Currently the HF has a plugin system in the form of bfx-hf-models
adapters, which abstract Trade and Candle sync logic. There is however a secondary system used within bfx-hf-server
which cannot be easily removed (individual exchange connection classes).
As a note, bfx-hf-server
relies on the bfx-hf-models
adapters for all algo order execution and trade/candle syncing, not the internal exchange connection classes.
bfx-hf-server
and half in bfx-hf-ext-plugin-EXCHANGE
This issue was found in the electron JS application.
Steps to reproduce:
Err:
Application freezes with "Not responding" status for a few seconds. This happens multiple times, not sure if there is some blocking code (prehaps chart waiting for data?) or if there is some really inefficient render patterns.
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.