Bitcoin Forum
May 28, 2024, 10:05:33 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 [26] 27 28 29 30 31 32 33 34 »
  Print  
Author Topic: Gekko - a javascript trading bot and backtesting platform  (Read 147807 times)
wizzardTim
Legendary
*
Offline Offline

Activity: 1708
Merit: 1000


Reality is stranger than fiction


View Profile
July 08, 2014, 02:52:32 PM
 #501

Hi guys!
.
.
.

shouldnt there be something like short or long advices?


Yes, that will come after some time, when gekko has gathered many trades in order to calculate advice (may take from 2 hours till 2 days to do that)

Behold the Tangle Mysteries! Dare to know It's truth.

- Excerpt from the IOTA Sacred Texts Vol. I
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
July 09, 2014, 12:46:42 AM
 #502

Hi guys!

i installed latest gekko from https://github.com/kuzetsa/gekko on my archlinux on raspberry pi

Working fine so far.

I configured it to catch short term data and show me some advice.

But only output i get is:

((...snip...))

Okay now i have some results

Quote
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) original simulated balance:
 1.16275 BTC
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) current simulated balance:
 1.16254 BTC
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) simulated profit:
 -0.00021 BTC (-0.01840%)
2014-07-08 16:49:45 (INFO):     processing 6 trade(s)
2014-07-08 16:51:21 (INFO):     processing 1 trade(s)

Note that my version explicitly is NOT made to:

[buy low] / [sell high] (repeatedly, over and over again.)

In fact, my version doesn't currently sell.
...ever.
...never ever
It's only set up to reinvest and buy more GHS on cex.io

As a result, the profit simulator won't tell you anything meaningful:
It doesn't simulate GHS mining, so it will never show any simulated profit.
Hermann1337
Legendary
*
Offline Offline

Activity: 1003
Merit: 1000


View Profile
July 09, 2014, 08:00:13 AM
 #503

Hi guys!

i installed latest gekko from https://github.com/kuzetsa/gekko on my archlinux on raspberry pi

Working fine so far.

I configured it to catch short term data and show me some advice.

But only output i get is:

((...snip...))

Okay now i have some results

Quote
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) original simulated balance:
 1.16275 BTC
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) current simulated balance:
 1.16254 BTC
2014-07-08 16:48:56 (INFO):     (PROFIT REPORT) simulated profit:
 -0.00021 BTC (-0.01840%)
2014-07-08 16:49:45 (INFO):     processing 6 trade(s)
2014-07-08 16:51:21 (INFO):     processing 1 trade(s)

Note that my version explicitly is NOT made to:

[buy low] / [sell high] (repeatedly, over and over again.)

In fact, my version doesn't currently sell.
...ever.
...never ever
It's only set up to reinvest and buy more GHS on cex.io

As a result, the profit simulator won't tell you anything meaningful:
It doesn't simulate GHS mining, so it will never show any simulated profit.

i configured it to be running on BTCe like told in the documentation and use RSI as method

it wont output a correct simulation with this configuration?
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
July 09, 2014, 01:37:36 PM
 #504

i configured it to be running on BTCe like told in the documentation and use RSI as method

it wont output a correct simulation with this configuration?

Sorry, I don't know.  If you're using askmike's original code it might work. (I really do not know) I'm not supporting BTCe exchange, RSI method, or sell orders, and the "simulation" code isn't something I've ever tried to debug or even use.
jeezy
Legendary
*
Offline Offline

Activity: 1237
Merit: 1010



View Profile
July 10, 2014, 08:05:58 AM
 #505

Just wanted to let you guys know I open sourced my own bot project (also written in Node.JS):

https://bitcointalk.org/index.php?topic=683755.0

My bot is currently a basic platform that works but it still has a huge road to go.

Currently I'm targetting the technical audience, so if you are skilled in Javascript/Node you might want to have a look :-).

Interesting, will have a look at the source code later on.
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
July 19, 2014, 09:13:17 PM
 #506

Now with smarter "sanity check" logic (based on a moving stats window) to do better TA science
...makes sure the price is actually good before reinvesting, and it worked better than I expected:

Code:
Start:	2014-07-16	01:17:20 PM
Stop: 2014-07-19 04:48:38 PM

Purchased @ 0.00487063 (volume weighted average price of actual / live / real GHS reinvest orders)
moving median, market price (min) 0.00485721 -0.28%  (occasionally a better price was missed)
moving median, market price (avg) 0.00495821 1.77% (on average, purchase price was better)
moving median, market price (max) 0.00536019 9.13% (occasionally the bot did really good)

^ The latest version I've been testing does a good job reinvesting GHS...

Relevant settings from config.js:

Code:
// ZERO settings:
config.ZERO = {
  // EMA weight (α)
  // the higher the weight, the more smooth (and delayed) the line
  short: 12.576709,
  long: 17.786152,
  signal: 10.992447,
  // how optimistic is the MACD extrapolation going to be?
  crystalball: 0.00000907,
  // how large is the stats window for sanity checking?
  window: 1361,
  // the difference between the EMAs (to act as triggers)
  thresholds: {
    down: -9999,
    up: 0.00000001,
  }
};
((...snip...))

As you can see, EMA weights don't have to be integers because of the way EMA works
(it's really an infinite impulse response filter, and technically not a moving average).



Anyway, here's the new version:

/releases/tag/zerolag "zerolag" EMAs [2014 July 16th]

It's been well-tested, and so it is the "latest" recommended build,
currently @ https://github.com/kuzetsa/gekko/releases/latest
jeezy
Legendary
*
Offline Offline

Activity: 1237
Merit: 1010



View Profile
July 20, 2014, 11:42:10 AM
 #507

Now with smarter "sanity check" logic (based on a moving stats window) to do better TA science
...makes sure the price is actually good before reinvesting, and it worked better than I expected:

Code:
Start:	2014-07-16	01:17:20 PM
Stop: 2014-07-19 04:48:38 PM

Purchased @ 0.00487063 (volume weighted average price of actual / live / real GHS reinvest orders)
moving median, market price (min) 0.00485721 -0.28%  (occasionally a better price was missed)
moving median, market price (avg) 0.00495821 1.77% (on average, purchase price was better)
moving median, market price (max) 0.00536019 9.13% (occasionally the bot did really good)

^ The latest version I've been testing does a good job reinvesting GHS...

Relevant settings from config.js:

Code:
// ZERO settings:
config.ZERO = {
  // EMA weight (α)
  // the higher the weight, the more smooth (and delayed) the line
  short: 12.576709,
  long: 17.786152,
  signal: 10.992447,
  // how optimistic is the MACD extrapolation going to be?
  crystalball: 0.00000907,
  // how large is the stats window for sanity checking?
  window: 1361,
  // the difference between the EMAs (to act as triggers)
  thresholds: {
    down: -9999,
    up: 0.00000001,
  }
};
((...snip...))

As you can see, EMA weights don't have to be integers because of the way EMA works
(it's really an infinite impulse response filter, and technically not a moving average).



Anyway, here's the new version:

/releases/tag/zerolag "zerolag" EMAs [2014 July 16th]

It's been well-tested, and so it is the "latest" recommended build,
currently @ https://github.com/kuzetsa/gekko/releases/latest

Thanks for sharing this Sarah. I will make sure to have a look at the code and give it a test spin.
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
August 23, 2014, 06:42:46 PM
 #508

Quote from: NAME_REMOVED
Hey I saw that you seem to have one of the most up to date branches for the Gekko project. I was wondering if I could ask you a few quick questions about the project. First, how hard was it to create a new bot strategy for Gekko? It seemed to me as if the project was designed to utilize the one strategy as opposed to users being able to easily write new bots with different strategies.

((...snip...))

^ I got a private message on the forums from someone asking how easy it is to add a new trading method.

No. gekko can use ANY strategy.

Adding support is pretty easy, just have a look at these two consecutive commits:




I personally implemented that node.js version of this reduced lag MACD code, but it is directly 100% based on Patrick Mulloy's:
"reduced lag" EMA method to improve MACD signals, known as DEMA from over 20 years ago.
...
For description of the algorithm, the original author (Mulloy) published detailed information which can be found in the
February 1994 issue of Technical Analysis of Stocks & Commodities Magazine, article titled: "Smoothing Data With Less Lag"

If anyone local wants to borrow a hardcopy I'd be fine with that, otherwise you might have trouble finding one online which isn't behind a paywall Sad
itod
Legendary
*
Offline Offline

Activity: 1974
Merit: 1076


^ Will code for Bitcoins


View Profile
August 23, 2014, 10:41:37 PM
 #509

I personally implemented that node.js version of this reduced lag MACD code, but it is directly 100% based on Patrick Mulloy's:
"reduced lag" EMA method to improve MACD signals, known as DEMA from over 20 years ago.
...
For description of the algorithm, the original author (Mulloy) published detailed information which can be found in the
February 1994 issue of Technical Analysis of Stocks & Commodities Magazine, article titled: "Smoothing Data With Less Lag"

If anyone local wants to borrow a hardcopy I'd be fine with that, otherwise you might have trouble finding one online which isn't behind a paywall Sad

Just ask and you shall be given  Wink :
ftp://80.240.216.180/Transmission/Фaйлы/S&C%20on%20DVD%2011.26/VOLUMES/V12/C02/SMOOTHI.PDF

BTW, on that FTP server you have a complete 13 years of that magazine, a treasure.

Edit: forum software removes the ":" sign after the "ftp" and before "//", just add it yourself, or copy/paste the complete string of the link to other tab.
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
August 24, 2014, 05:03:16 AM
 #510

I personally implemented that node.js version of this reduced lag MACD code, but it is directly 100% based on Patrick Mulloy's:
"reduced lag" EMA method to improve MACD signals, known as DEMA from over 20 years ago.
...
For description of the algorithm, the original author (Mulloy) published detailed information which can be found in the
February 1994 issue of Technical Analysis of Stocks & Commodities Magazine, article titled: "Smoothing Data With Less Lag"

If anyone local wants to borrow a hardcopy I'd be fine with that, otherwise you might have trouble finding one online which isn't behind a paywall Sad

Just ask and you shall be given  Wink :
ftp://80.240.216.180/Transmission/Фaйлы/S&C%20on%20DVD%2011.26/VOLUMES/V12/C02/SMOOTHI.PDF

BTW, on that FTP server you have a complete 13 years of that magazine, a treasure.

Edit: forum software removes the ":" sign after the "ftp" and before "//", just add it yourself, or copy/paste the complete string of the link to other tab.

Neat, yeah. Thanks itod - that russian server apparently has an electronic PDF version, it's the same article as the one I used for reference.

Mostly my point was that it's not hard to add new trading methods to gekko, and that particular specification was "low hanging fruit" since I had a copy of mulloy's well-written article at my disposal... I just wanted to try something cool which wasn't already in gekko Smiley



Edited to add:

Holy crap, I was curious and trying to translate that russian URL into english, and once I converted the %20 into spaces, noticed that
it says: [ S&C on DVD 11.26 ]

Thanks so much, I'm gonna get a copy of that DVD -- I hate hard copies they take up way too much space and are just awful to keep in good condition long-term... Turns out, apparently, that Фaйлы is russian for "files"
itod
Legendary
*
Offline Offline

Activity: 1974
Merit: 1076


^ Will code for Bitcoins


View Profile
August 24, 2014, 12:12:22 PM
 #511

Edited to add:

Holy crap, I was curious and trying to translate that russian URL into english, and once I converted the %20 into spaces, noticed that
it says: [ S&C on DVD 11.26 ]

Thanks so much, I'm gonna get a copy of that DVD -- I hate hard copies they take up way too much space and are just awful to keep in good condition long-term... Turns out, apparently, that Фaйлы is russian for "files"

That's a complete contents of the DVD 11.26 version. For those who would like to purchase a US$ 395 copy of the newest 12.27 version here's the link:
http://www.traders.com/Documentation/DVD_adpage/DVDrom.html

In both cases there's a *lot* of useful info there. I've found some quality descriptions of many indicators and their specific implementations.
robyone
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
September 25, 2014, 02:41:23 PM
 #512


WHAT IS that method in the DEMA.js? I do not know what that code even is. It is not using a "double EMA" of any kind, and I can't seem to find any sort of indicator based on that sort of algorithm. This is how it works:

Code:
~pseudocode~

Calculate a fast and slow EMA average

A = subtract one from the other

B = add one to the other, and divide it by 2

C = 100 times A divided B

based on the value of C, assume positive values mean an uptrend, and negative values mean a downtrend

I ... don't even know what that is. It is not called "DEMA" though I don't think, I've never seen any TA indicator which does that particular combination of things to two different EMAs...

I could have updated the ticket with more info after fixing the PPO code, but was tired last night... PPO has been audited and is now consistent with the new codebase, and I added the x2MACD now as well (which worked correctly overnight) -- updated: https://github.com/kuzetsa/gekko/issues/3


maybe you still have not found it, but it is in gekko documentation:

Code:
### DEMA

This method uses `Exponential Moving Average crossovers` to determine the current trend the
market is in. Using this information it will suggest to ride the trend. Note that this is
not MACD because it just checks whether the longEMA and shortEMA are [threshold]% removed
from eachother.

This method is fairly popular in bitcoin trading due to Bitcointalk user Goomboo. Read more about this method in [his topic](https://bitcointalk.org/index.php?topic=60501.0)

You can configure these parameters for DEMA in config.js:

    config.DEMA = {
      // EMA weight (α)
      // the higher the weight, the more smooth (and delayed) the line
      short: 10,
      long: 21,
      // amount of candles to remember and base initial EMAs on
      // the difference between the EMAs (to act as triggers)
      thresholds: {
        down: -0.025,
        up: 0.025
      }
    };

- short is the short EMA that moves closer to the real market (including noise)
- long is the long EMA that lags behind the market more but is also more resistant to noise.
- the down treshold and the up treshold tell Gekko how big the difference in the lines needs to be for it to be considered a trend. If you set these to 0 each line cross would trigger new advice.
robyone
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
September 29, 2014, 08:14:12 AM
 #513

i've made a small web interface for it.

screenshot: https://www.dropbox.com/s/od0ac7djvvdyrps/gekkoweb.png
source: https://www.dropbox.com/s/54y2crazfnyghnd/gekko.zip

i am not familiar with npm or node. so you have to install a few dependencies by hand (eg npm install express).

there are currently some drawbacks:
 - portfolio is only updated after a successfull buy or sell
 - web interface does work as soon as a the first advice is made.
 - only ema does work as the web if does show some internal data from it

i use it in "advanced mode" using data from mtgox and trading on mtgox and btce (but only with small amounts)

i did not test it with other configurations, so use it at your own risk (i am not responsiple for any losses etc).

as this is a pure personal project i dont think i'll make other extensions, but i am always open for suggestions

regards
flower

sorry for double post, but want to bump this thread with a question - does anyone have this package that is mentioned above? the dropbox URLs are dead.
glennmatthew
Sr. Member
****
Offline Offline

Activity: 462
Merit: 253


View Profile
October 05, 2014, 10:50:13 AM
 #514

Is anyone still running this project?


              ▄▄▄▄▄▄▄▄
          ▄▄████████████▄▄
       ▄████████████████████▄
     ▄██████████████▀█████████▄
   ▄███████████████   ██████████▄
  ▐█████████████████   ██████████▌
 ▐█████████████████▀    ██████████▌
 ███████████████▀        ██████████
▐████████████▀     ▄███   █████████▌
████████████    ▄████▀██▄███████████
██████████▀██▄████▀    █████████████
█████████   ███▀     ▄██████████████
▐█████████        ▄████████████████▌
 ██████████    ▄███████████████████
 ▐██████████   ███████████████████▌
  ▐██████████   █████████████████▌
   ▀██████████▄█████████████████▀
     ▀████████████████████████▀
       ▀████████████████████▀
          ▀▀████████████▀▀
              ▀▀▀▀▀▀▀▀
 
temtum




     █
    ██
   ████
  ██▌███
 ▐██▌███▌
 ███ ██▀▌
 ▀██ █▄██
 █▄█ ███▀
 ▀██ ██▄█
 █▄█ ███▌
  ██▌███
  ▐█▌██
   ▐█▌
    █
    █
     ▀
 




░░░░░░░░██████
░░░░░░░░██████
░░░░░░░░██████

░░░░░░░░░░░░░░░░░██████
░░░░░░░░░░░░░░░░░██████
░░░░░░░░░░░░░░░░░██████

░░░██████
░░░██████
░░░██████

░░░░░░░░░░░░░░░░░░░░░░░░░██████
░░░░░░░░░░░░░░░░░░░░░░░░░██████
░░░░░░░░░░░░░░░░░░░░░░░░░██████
 







        ▄▄██████▄▄
       ▐██▀    ▀██▌
       ██        ██
       ██        ██
       ██        ██
      ██████████████
      █████  ███████     ██ 
  ██  █  ████████  █ ██   
      ███████  █████    ██   
      ██████████████
 








▄██▄
▀██▀         ▄██▄
             ▀██▀

       ▄██▄
       ▀██▀

           ▄██▄
  ▄██▄     ▀██▀
  ▀██▀
 
 


           ▄▄█▄▄   ▄
█▄        ████████▀▄
███      █████████▀
▐███▄    ████████▌
▄▄█████▄▄▄███████▌
  ▀█████████████
  ▄▄██████████▀
    ▄████████▀
▀▀████████▀
    ▀▀▀
 

    ▄█▀▀ ▄▄▄▄▄▄ ▀▀█▄
   ▐█▄████████████▄█▌
  ▐██████████████████▌
  █████▀▀▀████▀▀▀█████
 █████     ██     █████
▐██████▄▄▄████▄▄▄██████▌
 ████▄▀▀▀██████▀▀▀▄████
  ▀▀████        ████▀▀
      ▀▀        ▀▀
 

         █▀▀▄▄▄█▄
         █    ▀█▀
       ▄▄█▄▄
▄██▄▄████████▄▄██▄
█████▀▀████▀▀█████
 ███▄  ▄██▄  ▄███
  ▀████▀██▀████▀
    ▀███▄▄███▀
       ▀▀▀▀

██ ██ ██ ██

   ██ ██ ██

      ██ ██

      ██ ██
   
Homepage

      ██ ██

      ██ ██

   ██ ██ ██

██ ██ ██ ██
   
White Paper
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
October 06, 2014, 12:19:22 AM
 #515

Is anyone still running this project?

I'll be resuming work soon...

I haven't updated anything in over a month though.



Also, there are other forks than mine:

https://github.com/askmike/gekko/network

^ you can drag with a mouse and scroll along the timeline to see what all updates and such are taking place on the various branches and forks and such. (one of the nice features of github -- a good way to see who all has been updating, what exists, whenever new forks happen, etc.)
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
October 10, 2014, 03:32:32 AM
Last edit: November 05, 2014, 01:47:42 PM by kuzetsa
 #516

Sorry for the ignorance .. but what is the minimum deposit because gekko start trading ?


Most exchanges have a minimum, but gekko itself can handle very small amounts.

Also, keep in mind that for a lot of exchanges, a microtrade smaller than 0.000002 bitcoin (200 satoshi) or less would be a bad thing since the fees are usually rounded up to the nearest satoshi (8 decimal places) and the lowest fee possible is 1 satoshi (0.00000001 BTC)

Either way, it'll work with 0.00000235 bitcoin just as easily as 5000 bitcoin, though I'd recommend start with less than 5k BTC
(that was meant as a joke, testing with over a million USD is a bit crazy).
BTC Turkiye
Sr. Member
****
Offline Offline

Activity: 472
Merit: 254


Anlik Coin Fiyatlari BTCkur.com


View Profile WWW
November 04, 2014, 08:40:15 PM
 #517

I write node gekko and press enter but it does nothing. It just gives me another line to put a command again in ubuntu

Farklı Borsaların Anlık Bitcoin, Litecoin, Ethereum ve Bitcoin Cash Kurunu Takip Edebilirsiniz.
BTCkur.com
BTC Turkiye
Sr. Member
****
Offline Offline

Activity: 472
Merit: 254


Anlik Coin Fiyatlari BTCkur.com


View Profile WWW
November 04, 2014, 09:04:44 PM
 #518

Nevermind. I solved the issue and thought I should let others know.

If you use Ubuntu, the command to start the script is not node gekko but It`s
sudo nodejs gekko

Farklı Borsaların Anlık Bitcoin, Litecoin, Ethereum ve Bitcoin Cash Kurunu Takip Edebilirsiniz.
BTCkur.com
kuzetsa
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250


View Profile
November 05, 2014, 01:39:33 PM
 #519

Nevermind. I solved the issue and thought I should let others know.

If you use Ubuntu, the command to start the script is not node gekko but It`s
sudo nodejs gekko

gekko with a standard node.js installation has never required sudo.

ubuntu is doing something wrong to break your node.js if it disabled the node command and changed the command to nodejs

perhaps you should check and confirm that ubuntu isn't adding "node" to your environment / path...

I don't use ubuntu, nor do I know how they like to do things otherwise I'd file a bug with your distro.



commands to check and make sure it's in your path:

Code:
kuzetsa@yurizoku ~ $ which node
/usr/bin/node
kuzetsa@yurizoku ~ $ which nodejs
which: no nodejs in (/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.9.1)
kuzetsa@yurizoku ~ $

^ I have no idea what that "nodejs" even is, but if it requires sudo to use I'd recommend fixing your path
(and/or possibly uninstalling the ubuntu nodejs all together, since it's naughty and demands more privileges than it needs)

you SHOULD NOT need to use sudo.

If you chose to use gekko via the the ubuntu-provided "nodejs" command, you're doing so at your own risk.
BTC Turkiye
Sr. Member
****
Offline Offline

Activity: 472
Merit: 254


Anlik Coin Fiyatlari BTCkur.com


View Profile WWW
November 07, 2014, 09:48:56 AM
 #520

Should we actually install this for the bot?
Do we need it?
https://github.com/rvagg/node-levelup

Farklı Borsaların Anlık Bitcoin, Litecoin, Ethereum ve Bitcoin Cash Kurunu Takip Edebilirsiniz.
BTCkur.com
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 [26] 27 28 29 30 31 32 33 34 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!