Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

installation steps #2

Closed
Kanchangk opened this issue Aug 1, 2022 · 41 comments
Closed

installation steps #2

Kanchangk opened this issue Aug 1, 2022 · 41 comments
Labels
help wanted Extra attention is needed

Comments

@Kanchangk
Copy link

Hi,

The repository looks promising and suffice my requirements, it seems.
But I am not sure how to install it in local machine (windows) or in a VPS (linux).

It would be very helpful if you can provide a step by step guide to install and run it.

Thanks.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 1, 2022

Hi

Thanks for your interest in the project. I haven't maintained the code for a while so I cannot promise if everything still works.

You can actually more or less deduct the steps needed by looking at the captain file: https://github.com/Eleven-Trading/TradeNote/blob/main/captain-definition

Plese beware that you also need a Parse.com instance running as well as a PHP server with the different functions I've put in the files.

I have a much cleaner and more developed version but I haven't open sourced it. as mentioned in the readme, I'l consider doing so if I see there is enough interest around this project.

@agrieco
Copy link

agrieco commented Aug 1, 2022

Hi

Thanks for your interest in the project. I haven't maintained the code for a while so I cannot promise if everything still works.

You can actually more or less deduct the steps needed by looking at the captain file: https://github.com/Eleven-Trading/TradeNote/blob/main/captain-definition

Plese beware that you also need a Parse.com instance running as well as a PHP server with the different functions I've put in the files.

I have a much cleaner and more developed version but I haven't open sourced it. as mentioned in the readme, I'l consider doing so if I see there is enough interest around this project.

I'd love to see this and at least explore it. I'm still seeking a solution in this space...

@7aklhz
Copy link
Contributor

7aklhz commented Aug 1, 2022

Ok, if I get 20 likes on this post, I'll create a custom group amongst which I'll do one of 2 things:

  • Share the code
  • Or give access to my instance where people can at least try the platform

So, as I understand, @Kanchangk and @agrieco, you would be interested ?

So don't hesitate to share along.

PS : can you tell me why you are interested in this project ? is it because it's open source / free ? Because of the privacy ? Because you can run it ? because of the UX ? etc....

@agrieco
Copy link

agrieco commented Aug 1, 2022

For me, 'Why' is (in this order): Free, Privacy, extensibility (because it is OSS).

@Kanchangk
Copy link
Author

@7aklhz Thanks for prompt response and considering to share your project.
I actually like to host things on my own because of the privacy and the flexibility it provides. and honestly, I also liked the simplicity of the UI of your project.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 1, 2022

Thanks.
And the current version I use I find actually even better UI with dark mode, mobile friendly and no server (no PHP functions, just Parse.com). I'm glad to share but need to see there's some traction before I dedicate more time sharing in Github (cause it requires for me to adapt somewhat the code).

@Kanchangk
Copy link
Author

I am sure it will attract more and more people once they are actually able to use it. I mean, even I would have simply skipped the repo as I was not able figure out how to use it, but I decided to open a thread as I genuinely liked the project and wanted to take the chance of getting a reply :)

@7aklhz
Copy link
Contributor

7aklhz commented Aug 1, 2022

I'm sure your right. Will see if I have time to reopen the GitHub.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 8, 2022

@Kanchangk, @agrieco : you've motivated me to reactivate the project ;). I'm about to push the new version. However, are you willing to help me out and test the step by step process and give me feedback ? I've never installed the project from zero so I want to make sure the explanation is clear and that I'm not missing an important step/issue and see what errors come up.

@agrieco
Copy link

agrieco commented Aug 8, 2022

@Kanchangk, @agrieco : you've motivated me to reactivate the project ;). I'm about to push the new version. However, are you willing to help me out and test the step by step process and give me feedback ? I've never installed the project from zero so I want to make sure the explanation is clear and that I'm not missing an important step/issue and see what errors come up.

Yep- as long as we're not installing on Windows.

I'd love to see a docker install method. Im happy to work with you on translating what you have into a docker install.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 8, 2022

@Kanchangk, @agrieco : you've motivated me to reactivate the project ;). I'm about to push the new version. However, are you willing to help me out and test the step by step process and give me feedback ? I've never installed the project from zero so I want to make sure the explanation is clear and that I'm not missing an important step/issue and see what errors come up.

Yep- as long as we're not installing on Windows.

I'd love to see a docker install method. Im happy to work with you on translating what you have into a docker install.

Well, it so happens, I did a docker build installation option ;) Happy to optimize it if possible: I wanted to create an image with env variables. However, as I'm not using any server, the only option seems to use the NGIX conf file. But that seemed a little bit complicated. Once I push, have a look and tell me if there is a solution to create and image and let people inject the variables as env variables

@7aklhz
Copy link
Contributor

7aklhz commented Aug 9, 2022

Ok, I just commited the last version. It includes steps for building the project. It would be great if you could let me know your thoughts and check for errors

@agrieco
Copy link

agrieco commented Aug 10, 2022

Sounds good. I've been battling parse install. will follow up. apparently latest parse dashboard install has a known error ;-( parse-community/parse-dashboard#2196

@7aklhz
Copy link
Contributor

7aklhz commented Aug 10, 2022

Sorry to hear that. I'm using Caprover to install Parse and it worked well.

@barretthugh
Copy link
Contributor

Sounds good. I've been battling parse install. will follow up. apparently latest parse dashboard install has a known error ;-( parse-community/parse-dashboard#2196

The new alpha version has fix this issue

@barretthugh
Copy link
Contributor

barretthugh commented Aug 10, 2022

@agrieco the compose file I am using

`
version: '2'
services:
mongodb:
image: mongo
ports:
- '27017:27017'
environment:
- ALLOW_EMPTY_PASSWORD=yes

parse:
image: parseplatform/parse-server
ports:
- '1337:1337'
depends_on:
- mongodb
environment:
- PARSE_SERVER_APPLICATION_ID=APPLICATION_ID
- PARSE_SERVER_MASTER_KEY=MASTER_KEY
- PARSE_SERVER_DATABASE_URI=mongodb://mongodb/tradeNote

parse-dashboard:
image: parseplatform/parse-dashboard:4.2.0-alpha.4
environment:
- PARSE_DASHBOARD_SERVER_URL=http://localhost:1337/parse
- PARSE_DASHBOARD_APP_ID=APPLICATION_ID
- PARSE_DASHBOARD_MASTER_KEY=MASTER_KEY
- PARSE_DASHBOARD_USER_ID=admin
- PARSE_DASHBOARD_USER_PASSWORD=admin
- PARSE_DASHBOARD_APP_NAME=myapp
- PARSE_DASHBOARD_ALLOW_INSECURE_HTTP=1
- PARSE_DASHBOARD_ALLOW_ANONYMOUS_USER=1
ports:
- '4040:4040'

depends_on:
  - parse

`

@barretthugh
Copy link
Contributor

Hi @7aklhz

after followed the installation steps(use the given docker file), I got some errors in the browser console, do I miss something?

Uncaught (in promise) SyntaxError: "undefined" is not valid JSON
at JSON.parse ()
at dashboardMixin.js:73:40
(anonymous) @ dashboardMixin.js:73
await in (anonymous) (async)
getDailyInfos @ dashboardMixin.js:66
mounted @ vue.js:671
invokeWithErrorHandling @ vue.js:3665
callHook$1 @ vue.js:3071
mountComponent @ vue.js:2945
Vue.$mount @ vue.js:9243
Vue.$mount @ vue.js:11802
Vue._init @ vue.js:4678
Vue @ vue.js:5715
(anonymous) @ vue.js:1

@7aklhz
Copy link
Contributor

7aklhz commented Aug 10, 2022

It's probably normal cause I have not tasted the app with empty classes and for what it looks like the error comes from there. I will look into it as soon as possible and post an update

@7aklhz
Copy link
Contributor

7aklhz commented Aug 10, 2022

@barretthugh : I removed dailyInfos for now, as it's a feature I have not used and developed extensively. I will get back to it later. So, try and pull now and see if you get the error/what other errors you get.

@7aklhz 7aklhz added the help wanted Extra attention is needed label Aug 11, 2022
@barretthugh
Copy link
Contributor

barretthugh commented Aug 11, 2022

@barretthugh : I removed dailyInfos for now, as it's a feature I have not used and developed extensively. I will get back to it later. So, try and pull now and see if you get the error/what other errors you get.

when I access http://localhost:7777/register, it directs to http://localhost:7777/dashboard automatically, and shows the following error

Failed to load resource: the server responded with a status of 400 (Bad Request) Uncaught (in promise) Error: Invalid session token at handleError (parse.min.js:13:226309) at async dashboardMixin.js:72:33

the register was working yesterday

@7aklhz
Copy link
Contributor

7aklhz commented Aug 11, 2022

@barretthugh: Is the user present in the Parse database ? Can you try to login using the same user and password as yesterday ? If not, clean your cache, session and local storage and create a new user via /register

@barretthugh
Copy link
Contributor

@barretthugh: Is the user present in the Parse database ? Can you try to login using the same user and password as yesterday ? If not, clean your cache, session and local storage and create a new user via /register

I deleted all contains(db, parse, parse dashboard and tradenote), rebuild tradenote image and run everything up(repeat the installation steps)

Yes, there was no user in the database.

after cleaning session and cache, the register works

I am in now 😃 , but still getting errors

@7aklhz
Copy link
Contributor

7aklhz commented Aug 11, 2022

Cool. What errors ? I presume they are related to the fact that in the step by step I told you to only create the Classes and not the columns. Can you try to add trades and see if the columns get automatically created and the errors disappear ?
PS: just to make sure, your using TradeZero as broker ? Cause for the moment that's the only broker I've integrated

@barretthugh
Copy link
Contributor

Cool. What errors ? I presume they are related to the fact that in the step by step I told you to only create the Classes and not the columns. Can you try to add trades and see if the columns get automatically created and the errors disappear ? PS: just to make sure, your using TradeZero as broker ? Cause for the moment that's the only broker I've integrated

I am not using TradeZero, will test it with other data format, I have some python scripts and a redis server working with live data, so will try to convert my data to match tradeNote, or modify tradeNote to let it use my data :)

for now, my goal is let tradeNote working in raspberry pi (parse-dashboard is not compatible with arm cpu)

the errors I mentioned:

Uncaught (in promise) SyntaxError: "undefined" is not valid JSON at JSON.parse (<anonymous>) at tradesMixin.js:152:46 (anonymous) @ tradesMixin.js:152 await in (anonymous) (async) (anonymous) @ tradesMixin.js:145 getAllTrades @ tradesMixin.js:156 created @ vue.js:556 await in created (async) invokeWithErrorHandling @ vue.js:3665 callHook$1 @ vue.js:3071 Vue._init @ vue.js:4670 Vue @ vue.js:5715 (anonymous) @ vue.js:1

another thing, when I select 'demo account' in dashboard->filter, the page disappear, I have to clean session and cache again to let it work

@barretthugh
Copy link
Contributor

Hi @7aklhz can u provide some example data? Like trades, setups, entries?

@7aklhz
Copy link
Contributor

7aklhz commented Aug 11, 2022

@barretthugh i will get back to you tomorrow on that

@7aklhz
Copy link
Contributor

7aklhz commented Aug 12, 2022

@barretthugh : I just pushed a new repo with an example csv file of trades (with both short and long positions) (PS : do not bother with cash journal in your case).
Concerning the error, can you add the following columns to the trades Class and tell me if the error message disappears ?

  • ACL - type ACL
  • user - type Pointer
  • date - type Date
  • dateUnix - type Number
  • executions - type Array
  • trades - type Array
  • blotter - type Object
  • pAndL - type Object

@barretthugh
Copy link
Contributor

@barretthugh : I just pushed a new repo with an example csv file of trades (with both short and long positions) (PS : do not bother with cash journal in your case).

Concerning the error, can you add the following columns to the trades Class and tell me if the error message disappears ?

  • ACL - type ACL

  • user - type Pointer

  • date - type Date

  • dateUnix - type Number

  • executions - type Array

  • trades - type Array

  • blotter - type Object

  • pAndL - type Object

Thanks, will get back to u

@barretthugh
Copy link
Contributor

@7aklhz it shows the following error when I upload the example csv

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'split')
at addTradesMixin.js:85:77
at new Promise ()
at Vue.createJournal (addTradesMixin.js:67:20)
at addTradesMixin.js:60:28
(anonymous) @ addTradesMixin.js:85
createJournal @ addTradesMixin.js:67
(anonymous) @ addTradesMixin.js:60
Promise.then (async)
importCashJournals @ addTradesMixin.js:53

@7aklhz
Copy link
Contributor

7aklhz commented Aug 13, 2022

@barretthugh this error is related to cash journal I mentioned. There are 3 steps in uploading trades :

  1. Upload cash journal. In tradezero, cash journal are costs related to the platform (platform fee, cash withdrawal fee, etc.) and short locate fee
  2. Upload trades. These are your actual trades. Note: for the moment you can only upload intraday trades, no swing trades
  3. Upload
    So, in your case, click "next" to skip the first step and then add the example csv

For your information, I have a Discord for TradeNote we can use for quicker / easier chat : https://discord.gg/VTf3JGk7

@electricar
Copy link

@barretthugh:
have you managed to install TradeNote on the raspberry pi?
If yes, can you please send me a bit more detailed installation instructions?
Thank you very much in advance!

@barretthugh
Copy link
Contributor

@barretthugh: have you managed to install TradeNote on the raspberry pi? If yes, can you please send me a bit more detailed installation instructions? Thank you very much in advance!

still working on that, will share the docker files once finished

@agrieco
Copy link

agrieco commented Aug 14, 2022

I was able to follow the instructions and get things up and running here. Excited to see what using it is like ! ;-)
There is a lot of work to help simplify the installation that would be useful for slightly more novice users. I'll take a look and see what I can contribute down this path.

@electricar
Copy link

I was able to follow the instructions and get things up and running here. Excited to see what using it is like ! ;-) There is a lot of work to help simplify the installation that would be useful for slightly more novice users. I'll take a look and see what I can contribute down this path.

That would be awesome! I am quite struggling to get it to work on my raspberry pi4.
Do you by any chance can send screenshots of the content of the "calendar, journal, setups..." tabs?
I cannot find any information about the content of these tabs on the github.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 17, 2022

@electricar : fyi, I did not upload screenshots of these pages as they contain my personal notes and images ;)
Concerning pi installation, I think people get it working by installing Parse via Docker on pi. Can you try that ?

@electricar
Copy link

@electricar : fyi, I did not upload screenshots of these pages as they contain my personal notes and images ;) Concerning pi installation, I think people get it working by installing Parse via Docker on pi. Can you try that ?

Yes I know, that's why I was asking here. Maybe someone has a test installation or not so much information yet :)
I will try it with docker next.

@7aklhz
Copy link
Contributor

7aklhz commented Aug 17, 2022

I will try it with docker next.
@electricar : Let me know if it works so I can put it as a working solution in Readme

@barretthugh
Copy link
Contributor

I will try it with docker next.
@electricar : Let me know if it works so I can put it as a working solution in Readme

here is my temp solution

  1. build the tradenote image via given dockerfile (on pi or remove server)
  2. run mongodb, parse server, tradenote via docker compose file (on pi or remove server)
  3. run addclass.sh to add classes (on pi or remove server)
  4. register user via http://server:7777/register
  5. run a standalone parse-dashboard on local computer via docker compose file
  6. add columns and data to _User via parse dashboard ( I can't log in if do this via a script, it looks like I have to do this manually iva dashboard)
  7. clean browser session and cache, login
  8. repeat step 7 if login failed

I tested on my pi4, I will pr the files if these steps is ok for you(not too complicated)

btw, I think the best way is you do this via code( add classes, columns, accounts data)

@7aklhz
Copy link
Contributor

7aklhz commented Aug 18, 2022

@barretthugh Great. Can you share with us your adclasses.sh file ?

@7aklhz
Copy link
Contributor

7aklhz commented Aug 19, 2022

I will close this for now. You can contact us via Discord here : https://discord.gg/VTf3JGk7

@7aklhz 7aklhz closed this as completed Aug 19, 2022
@7aklhz
Copy link
Contributor

7aklhz commented Aug 19, 2022

@Kanchangk @agrieco @barretthugh @electricar : Were you able to install TradeNote and use it ? What do you think ? It would be great to get some feedback to see if what I should improve and see see if people are really using TradeNote.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

5 participants