Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 39,322
» Latest member: DishisdesignJewellery
» Forum threads: 926
» Forum posts: 6,383

Full Statistics

Online Users
There are currently 311 online users.
» 0 Member(s) | 311 Guest(s)

Latest Threads
An official Gekko service...
Forum: Announcements
Last Post: tanvirai
11-20-2025, 12:18 PM
» Replies: 113
» Views: 291,862
Gekko development status ...
Forum: Announcements
Last Post: erectilenovus
11-17-2025, 11:36 AM
» Replies: 753
» Views: 1,769,854
Gekko 0.6 released
Forum: Announcements
Last Post: soniyathakur
11-02-2025, 12:21 PM
» Replies: 129
» Views: 380,493
Gekko with malware spotte...
Forum: Announcements
Last Post: cofffee124
10-30-2025, 09:56 AM
» Replies: 216
» Views: 346,526
New Gekko UI in the works
Forum: Announcements
Last Post: cofffee124
09-04-2025, 08:12 AM
» Replies: 186
» Views: 390,861
How to add Binance Future...
Forum: Technical Support
Last Post: Xavier32
10-07-2021, 02:20 PM
» Replies: 47
» Views: 159,148
Bittrex Configuration hel...
Forum: Bittrex
Last Post: yirzolusto
10-07-2021, 07:39 AM
» Replies: 6
» Views: 31,846
[Question] Why does gekko...
Forum: General Discussion
Last Post: cryptocurrency0
10-06-2021, 01:16 PM
» Replies: 16
» Views: 70,997
a couple of technical Que...
Forum: Technical Support
Last Post: mtom78632
10-06-2021, 11:08 AM
» Replies: 25
» Views: 87,757
Is there any way to make ...
Forum: Custom Systems
Last Post: seorun
10-05-2021, 08:20 AM
» Replies: 42
» Views: 134,771

 
  Gekko 0.6 released
Posted by: askmike - 06-24-2018, 10:31 AM - Forum: Announcements - Replies (129)

[EDIT]
0.6 is OUT! Get the release here
[/EDIT]


Gekko 0.6.0 is a major upgrade of the Gekko project, you can find some background information here.

The release of 0.6.0 is now finally ready for testing! Note that this release only includes:

- rewritten core & event logic.
- rewritten core plugins such as baseStrategy, performanceAnalyzer, paperTrader and (live) trader.
- Addition of the Gekko Broker library for live order execution.

LIMITATIONS:

- It does not support all exchanges previously supported by Gekko, see here for a list: https://github.com/askmike/gekko/blob/de....md#status


To test the 0.6 pre release:

- Update Gekko to the latest release.
- Make sure you run a new Node version (minimum is updated from 6.0 to 8.11.2)
- Besides the usual installation, please also install Gekko Broker dependencies, see here: https://github.com/askmike/gekko/blob/pr...pendencies

If you find any issue with the new release please open an issue on github (or open a new thread on the forum).


  How to create an automated trailing stop limit order?
Posted by: Elorpar - 06-24-2018, 08:09 AM - Forum: Automated Trading - Replies (1)

Let's say I have a stock trading at $100. If it gets to $120 I want to have a trailing stop limit order initiated with a trailing amount of $1 let's say.
I only want the trailing stop limit to take effect once the stock reaches $120.
How to create an strategy to automate this process?


  How to create an automated trailing stop limit order?
Posted by: Elorpar - 06-24-2018, 08:08 AM - Forum: Strategy Development - No Replies


Let's say I have a stock trading at $100. If it gets to $120 I want to have a trailing stop limit order initiated with a trailing amount of $1 let's say.
I only want the trailing stop limit to take effect once the stock reaches $120.
How to create an strategy to automate this process?


  Does gekko store data in memory or database?
Posted by: gsxr - 06-22-2018, 03:16 AM - Forum: General Discussion - Replies (5)

I had run --import to load initial data of over 5000 mintues using CLI.

I found the postgresql database loaded with some records successfully (with 6718 records).

Live paper trader was successfully run with slow moving average indicator loaded with 1000 x 5 min candles.

I did make sure config.candleWriter = { enabled: true }

I supposed new candle data will be inserted to database for all the subsequent ticker update. However, I found the number of records did not increased.

After a day of running, I restarted gekko live trader using the same config file. Datasets were not stitched with following log...

---- DEBUG LOG ----
The trading method requests 5000 minutes of historic data. Checking availablity..
Available local data:
from: 5000 minutes ago
to: 1176 minutes ago
Usable local data available, trying to match with exchange data..
Preventing Gekko from requesting 1191 minutes of history.
Fetching exchange data since 240 minutes ago
Available exchange data:
from: 240 minutes ago
to: 180 minutes ago
Unable to stitch datasets.
Not seeding locally available data to the trading method.
The exchange does not return enough data. 0 minutes are still missing.
---- END OF LOG ----

It seems like that 1176 minutes running of live paper trader did not save candle data into database but only in memory. Therefore that period of data was lost after gekko restarted.

I also don't understand why gekko fetch exchange data from 240 min to 180 min? I have seen this happened many times before.

Since it doesn't make sense to wait for a 5000 minutes warmup, my workaround is to run --import using CLI again to load the data after every gekko restart.

Does anyone know if this is a constraint of did I miss anything in the configuration for gekko to save live data into the database?

Thanks for advice.


Bug [TUT] CONFIG-FILE CONVERTOR FOR CLI GEKKO
Posted by: susitronix - 06-21-2018, 04:25 PM - Forum: Guides - Replies (1)

for the CLI-gekko (terminal gekko) we must set up the sample-config.js.

our strategie has its "my_strategie.toml" file, but in the config IT MUST BE AS JSON-style CODE.

if you do not use the backtest Machine from xFFFFF,
you can simply use an online tool that makes the conversation for you.
this is very easy and never makes an error.!!!

go to this page:
toml-json convertor

here simply copie paste your .toml code

Code:
[___trendatron___]
#<<<>>><<<>>>#
__longPos = false

#>>><<<>>><<#
[_backtest_start_]
__________day = 1
______month = 4
_____hour = 18
_minute = 38
candle_size = 1
#<<<>>><<<>>>#

[RSI]
optInTimePeriod = 30

[trsRSI]
high = 68
low = 30

[___stop_abs____]
stop_abs = -1.7
abs_exp = -250

now copie/paste the created .json code into your sample-config.js, as you can learn from my other Tutorial:
Code:
{
 "___trendatron___": {
   "__longPos": false
 },
 "_backtest_start_": {
   "__________day": 1,
   "______month": 4,
   "_____hour": 18,
   "_minute": 38,
   "candle_size": 1
 },
 "RSI": {
   "optInTimePeriod": 30
 },
 "trsRSI": {
   "high": 68,
   "low": 30
 },
 "___stop_abs____": {
   "stop_abs": -1.7,
   "abs_exp": -250
 }
}


TUT#5
just scroll down and find the thread :-)

thanks to xFFFFF, Matias Korhonen, and Ankasem
hope this helps


  Backtest error??
Posted by: Kris191 - 06-18-2018, 05:03 AM - Forum: Technical Support - Replies (1)

Code:
/root/gekko/node_modules/sqlite3/lib/trace.js:27
                   throw err;
                   ^

TypeError: Cannot read property 'currency' of undefined
   at PerformanceAnalyzer.calculateReportStatistics (/root/gekko/plugins/performanceAnalyzer/performanceAnalyzer.js:143:30)
   at PerformanceAnalyzer.bound [as calculateReportStatistics] (/root/gekko/node_modules/lodash/dist/lodash.js:729:21)
   at PerformanceAnalyzer.finalize (/root/gekko/plugins/performanceAnalyzer/performanceAnalyzer.js:180:23)
   at PerformanceAnalyzer.bound [as finalize] (/root/gekko/node_modules/lodash/dist/lodash.js:729:21)
   at /root/gekko/core/gekkoStream.js:46:25
   at /root/gekko/node_modules/async/dist/async.js:3205:16
   at replenish (/root/gekko/node_modules/async/dist/async.js:1030:17)
   at iterateeCallback (/root/gekko/node_modules/async/dist/async.js:1015:17)
   at /root/gekko/node_modules/async/dist/async.js:988:16
   at /root/gekko/core/gekkoStream.js:47:12
--> in Database#all('\n    SELECT * from candles_BTC_TRX\n    WHERE start <= 1529297820 AND start >= 1529298600\n    ORDER BY start ASC\n  ', [Function])
   at Reader.get (/root/gekko/plugins/sqlite/reader.js:98:11)
   at Reader.bound [as get] (/root/gekko/node_modules/lodash/dist/lodash.js:729:21)
   at Market.get (/root/gekko/core/markets/backtest.js:61:15)
   at Market.bound [as get] (/root/gekko/node_modules/lodash/dist/lodash.js:729:21)
   at Market.processCandles (/root/gekko/core/markets/backtest.js:105:10)
   at bound (/root/gekko/node_modules/lodash/dist/lodash.js:729:21)
   at Statement.<anonymous> (/root/gekko/plugins/sqlite/reader.js:108:5)
 Anyone now the reason for this error when a CLI backtest has finished? bT has been working but today it isnt,

Can someone help?


  Gekko CLI - Unable to buy for ETH/USD on Gemini
Posted by: crypto49er - 06-17-2018, 07:45 PM - Forum: Technical Support - Replies (1)

Hi all,

I know Gemini isn't a popular exchange (at least not talked about much in this forum). I'm trying to set it because I want to have a "set it and forget it" place to let Gekko do its thing and I will just check once a month on the performance of the strat.

So I just started live trading on Gekko CLI on Gemini the other day and I'm getting this error message. Anyone else experience this error message before? Any fixes? I will share my solution if I find it. Thanks.

Code:
2018-06-17 15:10:31 (ERROR):    unable to buy Error: Invalid quantity for symbol ETHUSD: 0.10618643
    at Request._callback (/home/jack/gekko/node_modules/gemini-exchange-coffee-api/lib/gemini.js:64:19)
    at Request.self.callback (/home/jack/gekko/node_modules/gemini-exchange-coffee-api/node_modules/request/request.js:123:22)
    at Request.emit (events.js:160:13)
    at Request.<anonymous> (/home/jack/gekko/node_modules/gemini-exchange-coffee-api/node_modules/request/request.js:893:14)
    at Request.emit (events.js:165:20)
    at IncomingMessage.<anonymous> (/home/jack/gekko/node_modules/gemini-exchange-coffee-api/node_modules/request/request.js:844:12)
    at IncomingMessage.emit (events.js:165:20)
    at endReadableNT (_stream_readable.js:1101:12)
    at process._tickCallback (internal/process/next_tick.js:152:19) undefined


  Binance entering "getTicker" callback after api call, err: null data: 357 symbols
Posted by: ankasem - 06-17-2018, 02:16 AM - Forum: Binance - Replies (1)

hi

2018-06-17 04:42:26 (INFO): Trader
2018-06-17 04:42:26 (INFO): Follows the advice and create real orders.
2018-06-17 04:42:26 (DEBUG): portfolioManager : getting balance & fee from binance
2018-06-17 04:42:26 (INFO):

2018-06-17 04:42:27 (DEBUG): [binance.js] entering "getTicker" callback after api call, err: null data: 357 symbols
2018-06-17 04:42:28 (DEBUG): [binance.js] entering "setBalance" callback after api call, err: null data: {"makerCommission":10,"takerCommission":10,"buyerCommission":0,"sellerCommission":0,"canTrade":true,"canWithdraw":true,"canDeposit":true,"updateTime":1529199170532,"balances"

1-Why does this error come in

[b]2-canWithdraw:true  (why true)?[/b]



[b]gekko v0.5.14[/b]


  Using multiple datasets
Posted by: rbartoli - 06-13-2018, 10:11 AM - Forum: Technical Discussion - Replies (2)

Hi all, 

I've downloaded two datasets for Binance, BTC:ALL and ETH:ALL. They both have the same name, but it seems that gekko only recognised the one named exactly "binance_0.1.db". 

Is there something specific I need to do to allow the use of both datasets at the same time?

Thanks!


  History (convention and behaviour)
Posted by: rengel - 06-11-2018, 10:02 AM - Forum: General Discussion - Replies (3)

Hello there,

I wonder about these things. Maybe it is technically not feasable at this point .. I don't know.

1. History strorage convention
Right now I have separate *db-files (i.e. poloniex_0.1.db). The importer and the mimic to join segments is working for me, but sometimes very slow and unstable. I saw a thread offering history data, that will speed things up and not everyone would need to do the same time consuming thing.

Wouldn't it be nice, if the naming convention would identify a db file by trading plattform (exchange), currency and asset?
poloniex_USDT-BTC.db for example. This is only a question up to discussion.


2. Something like "Hot-Start"
History data is mandatory for technical indicators, no way around this.
But, is it already possible, to start (Paper- or Live-Trading) with any given size of history, which is not aggregated continuesly from reading new coming data, but by retrieving all the needed history size from the past before the start of the strategy? So basically an importing - process.
When all missing candles were collected/imported to join a complete history of the demanded size to the actual point in time, the strategy would then be allowed to make trades. 

Regards,
Rainer