| Welcome, Guest |
You have to register before you can post on our site.
|
| Online Users |
There are currently 370 online users. » 0 Member(s) | 370 Guest(s)
|
| Latest Threads |
An official Gekko service...
Forum: Announcements
Last Post: tanvirai
11-20-2025, 12:18 PM
» Replies: 113
» Views: 291,590
|
Gekko development status ...
Forum: Announcements
Last Post: erectilenovus
11-17-2025, 11:36 AM
» Replies: 753
» Views: 1,767,869
|
Gekko 0.6 released
Forum: Announcements
Last Post: soniyathakur
11-02-2025, 12:21 PM
» Replies: 129
» Views: 380,280
|
Gekko with malware spotte...
Forum: Announcements
Last Post: cofffee124
10-30-2025, 09:56 AM
» Replies: 216
» Views: 345,996
|
New Gekko UI in the works
Forum: Announcements
Last Post: cofffee124
09-04-2025, 08:12 AM
» Replies: 186
» Views: 390,447
|
How to add Binance Future...
Forum: Technical Support
Last Post: Xavier32
10-07-2021, 02:20 PM
» Replies: 47
» Views: 159,116
|
Bittrex Configuration hel...
Forum: Bittrex
Last Post: yirzolusto
10-07-2021, 07:39 AM
» Replies: 6
» Views: 31,835
|
[Question] Why does gekko...
Forum: General Discussion
Last Post: cryptocurrency0
10-06-2021, 01:16 PM
» Replies: 16
» Views: 70,988
|
a couple of technical Que...
Forum: Technical Support
Last Post: mtom78632
10-06-2021, 11:08 AM
» Replies: 25
» Views: 87,737
|
Is there any way to make ...
Forum: Custom Systems
Last Post: seorun
10-05-2021, 08:20 AM
» Replies: 42
» Views: 134,734
|
|
|
| SQLITE_CORRUPT error |
|
Posted by: chad.mercer - 02-12-2018, 08:40 PM - Forum: Technical Support
- Replies (3)
|
 |
Installed gekko on Bash for Windows per the instructions. UI is working fine. (Still can't get tulind to install, but that's not the purpose of this post.)
I'm doing a number of imports, and I keep getting errors like this in between "Child process has died." popups:
Quote:{ Error: SQLITE_CORRUPT: database disk image is malformed errno: 11, code: 'SQLITE_CORRUPT' }
The import process seems just a bit flaky.
Any thoughts?
|
|
|
|
| Telegram timeout |
|
Posted by: gibba - 02-12-2018, 01:22 PM - Forum: Technical Support
- Replies (4)
|
 |
Hello
i'm using commandline with Telegram alerts setup in the config.js, after some hours i received this error:
Code: Unhandled rejection TimeoutError: operation timed out
at afterTimeout (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/timers.js:16:15)
at Timeout.timeoutTimeout [as _onTimeout] (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/timers.js:59:9)
at ontimeout (timers.js:458:11)
at tryOnTimeout (timers.js:296:5)
at Timer.listOnTimeout (timers.js:259:5)
Unhandled rejection Error: 502 <html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.12.2</center>
</body>
</html>
at ~/bin/gekko/node_modules/node-telegram-bot-api/lib/telegramPolling.js:133:17
at tryCatcher (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/util.js:26:23)
at Promise._settlePromiseFromHandler (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/promise.js:510:31)
at Promise._settlePromiseAt (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/promise.js:584:18)
at Promise._settlePromises (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/promise.js:700:14)
at Async._drainQueue (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/async.js:123:16)
at Async._drainQueues (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/async.js:133:10)
at Immediate.Async.drainQueues [as _onImmediate] (~/bin/gekko/node_modules/node-telegram-bot-api/node_modules/request-promise/node_modules/bluebird/js/main/async.js:15:14)
at runCallback (timers.js:756:18)
at tryOnImmediate (timers.js:717:5)
at processImmediate [as _immediateCallback] (timers.js:697:5)
Unhandled rejection Error: 502 <html>
<head><title>502 Bad Gateway</title></head>
<body bgcolor="white">
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx/1.12.2</center>
</body>
</html>
Now Telegram alerts stopped to work.
Searching on the web it seems that the timeout limit need to be increased. I don't know if in the plugin library or in the node-telegram-bot-api.
I hope this can help devs solving the problem
|
|
|
|
| Cannot install Tulip Indicators |
|
Posted by: Sylvesta - 02-12-2018, 01:14 PM - Forum: Technical Discussion
- Replies (4)
|
 |
Hi All, hoping someone can help me here.
So trying to stall the tulip indicator using:
I get the following error and not too sure what it means besides it cant get the download from the server:
> tulind@0.8.9 install /home/Sylvesta/gekko/node_modules/tulind
> node-pre-gyp install --fallback-to-build
node-pre-gyp ERR! Tried to download(404): https://tulipnode.s3.amazonaws.com/tulin...x64.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for tulind@0.8.9 and node@8.9.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
make: Entering directory '/home/Sylvesta/gekko/node_modules/tulind/build'
CXX(target) Release/obj.target/tulind/tulind.o
../tulind.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE startbyindex(Nan::NAN_METHOD_ARGS_TYPE)’:
../tulind.cpp:72:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (ind->options != options->Length()) {
^
../tulind.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE callbyindex(Nan::NAN_METHOD_ARGS_TYPE)’:
../tulind.cpp:127:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (ind->inputs != inputs->Length()) {
^
../tulind.cpp:134:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (ind->options != options->Length()) {
^
CC(target) Release/obj.target/tulind/external/tiamalgamation.o
SOLINK_MODULE(target) /home/Sylvesta/gekko/node_modules/tulind/lib/binding/Release/node-v57-linux-x64/tulind.node
COPY Release/tulind.node
make: Leaving directory '/home/Sylvesta/gekko/node_modules/tulind/build'
+ tulind@0.8.9
updated 1 package in 10.175s
Anyone have an idea or a workaround for me please?
Cheers!
|
|
|
|
| Add Kucoin support |
|
Posted by: Wekende - 02-12-2018, 02:04 AM - Forum: Feature Requests
- Replies (1)
|
 |
Hello everyone,
I really would love to test out this bot on the exchange i'm normally trading on, Kucoin. If somebody would take the time and effort to write it i would greatly appreciate it. As far as i know there is already an API for this exchange for node/javascript so only a few adjustments would have to be made i think.
|
|
|
|
Accuracy of tulip indicators? |
|
Posted by: tommiehansen - 02-11-2018, 10:48 PM - Forum: Technical Discussion
- No Replies
|
 |
I know the accuracy of the indicators (all indicators) has come into question before, but when i ran a really long backtest now it just seems the return performance is too good?
Dataset
Pair: USDT-ETH
Exchange: poloniex
From: 2015-08-08 06:15
To: 2017-11-07 14:37
Duration: 2 years, 3 months, 12 hours, 52 minutes
Params
Candle Size: 15 minutes
Warmup period: 10
Paper trader
All on default
Strategy params
None, since they are defined within the js (see source @ tinit())
Strategy
RSI_BULL_BEAR_ADX
Results (screen)
https://i.imgur.com/L2iPfHV.png
Over 4.4 million percent (!) vs market @ 17 950%
Note: Output chart is cut since i resized the window after completion (it doesn't auto-resize)
Results 2 (screen); 5 minute candles instead of 15
+83 573 824% (yes, over 83 million percent return) which seems implausible
Screen: https://i.imgur.com/bB33jX4.jpg
Other
Running Gekko stable branch
Strategy source
Code: /*
RSI Bull and Bear + ADX modifier
1. Use different RSI-strategies depending on a longer trend
2. But modify this slighly if shorter BULL/BEAR is detected
-
8 feb 2017
-
(CC-BY-SA 4.0) Tommie Hansen
https://creativecommons.org/licenses/by-sa/4.0/
*/
// req's
var log = require ('../core/log.js');
var config = require ('../core/util.js').getConfig();
// strategy
var strat = {
/* INIT */
init: function()
{
this.name = 'RSI Bull and Bear + ADX';
this.requiredHistory = config.tradingAdvisor.historySize;
this.resetTrend();
// debug? set to flase to disable all logging/messages/stats (improves performance)
this.debug = false;
// performance
config.backtest.batchSize = 1000; // increase performance
config.silent = true;
config.debug = false;
/* TEMP: set params */
this.settings.SMA_long = 1000; // default 1000
this.settings.SMA_short = 50; // default 50
this.settings.BULL_RSI = 10; // timeperiod
this.settings.BULL_RSI_high = 80; // default 80
this.settings.BULL_RSI_low = 60; // default 60
this.settings.BEAR_RSI = 15; // timeperiod
this.settings.BEAR_RSI_high = 50; // default 50
this.settings.BEAR_RSI_low = 20; // default 20
this.settings.ADX = 3; // timeperiod
this.settings.ADX_high = 70;
this.settings.ADX_low = 50;
// SMA
this.addTulipIndicator('maSlow', 'sma', { optInTimePeriod: this.settings.SMA_long });
this.addTulipIndicator('maFast', 'sma', { optInTimePeriod: this.settings.SMA_short });
// RSI
this.addTulipIndicator('BULL_RSI', 'rsi', { optInTimePeriod: this.settings.BULL_RSI });
this.addTulipIndicator('BEAR_RSI', 'rsi', { optInTimePeriod: this.settings.BEAR_RSI });
// ADX
this.addTulipIndicator('ADX', 'adx', { optInTimePeriod: this.settings.ADX })
this.adx = { max: 0, min: 0 };
// debug stuff
this.startTime = new Date();
this.stat = {
bear: { min: 100, max: 0 },
bull: { min: 100, max: 0 }
};
}, // init()
/* RESET TREND */
resetTrend: function()
{
var trend = {
duration: 0,
direction: 'none',
longPos: false,
};
this.trend = trend;
},
/* get low/high for backtest-period */
lowHigh: function( rsi, type )
{
let cur;
if( type == 'bear' ) {
cur = this.stat.bear;
if( rsi < cur.min ) this.stat.bear.min = rsi; // set new
if( rsi > cur.max ) this.stat.bear.max = rsi;
}
else {
cur = this.stat.bull;
if( rsi < cur.min ) this.stat.bull.min = rsi; // set new
if( rsi > cur.max ) this.stat.bull.max = rsi;
}
},
/* CHECK */
check: function()
{
// get all indicators
let ind = this.tulipIndicators,
maSlow = ind.maSlow.result.result,
maFast = ind.maFast.result.result,
rsi,
adx = ind.ADX.result.result;
if( this.debug ){
if( adx < this.adx.min ) this.adx.min = adx;
else if( adx > this.adx.max ) this.adx.max = adx;
}
// BEAR TREND
if( maFast < maSlow )
{
rsi = ind.BEAR_RSI.result.result;
let rsi_hi = this.settings.BEAR_RSI_high,
rsi_low = this.settings.BEAR_RSI_low;
// ADX trend strength?
if( adx > this.settings.ADX_high ) rsi_hi = rsi_hi + 15;
else if( adx < this.settings.ADX_low ) rsi_low = rsi_low -5;
if( rsi > rsi_hi ) this.short();
else if( rsi < rsi_low ) this.long();
if(this.debug) this.lowHigh( rsi, 'bear' );
//log.debug('BEAR-trend');
}
// BULL TREND
else
{
rsi = ind.BULL_RSI.result.result;
let rsi_hi = this.settings.BULL_RSI_high,
rsi_low = this.settings.BULL_RSI_low;
// ADX trend strength?
if( adx > this.settings.ADX_high ) rsi_hi = rsi_hi + 5;
else if( adx < this.settings.ADX_low ) rsi_low = rsi_low -5;
if( rsi > rsi_hi ) this.short();
else if( rsi < rsi_low ) this.long();
if(this.debug) this.lowHigh( rsi, 'bull' );
//log.debug('BULL-trend');
}
}, // check()
/* LONG */
long: function()
{
if( this.trend.direction !== 'up' ) // new trend? (only act on new trends)
{
this.resetTrend();
this.trend.direction = 'up';
this.advice('long');
if( this.debug ) log.info('Going long');
}
if( this.debug )
{
this.trend.duration++;
log.info('Long since', this.trend.duration, 'candle(s)');
}
},
/* SHORT */
short: function()
{
// new trend? (else do things)
if( this.trend.direction !== 'down' )
{
this.resetTrend();
this.trend.direction = 'down';
this.advice('short');
if( this.debug ) log.info('Going short');
}
if( this.debug )
{
this.trend.duration++;
log.info('Short since', this.trend.duration, 'candle(s)');
}
},
/* END backtest */
end: function()
{
let seconds = ((new Date()- this.startTime)/1000),
minutes = seconds/60,
str;
minutes < 1 ? str = seconds + ' seconds' : str = minutes + ' minutes';
log.info('====================================');
log.info('Finished in ' + str);
log.info('====================================');
// print stats and messages if debug
if(this.debug)
{
let stat = this.stat;
log.info('BEAR RSI low/high: ' + stat.bear.min + ' / ' + stat.bear.max);
log.info('BULL RSI low/high: ' + stat.bull.min + ' / ' + stat.bull.max);
log.info('ADX min/max: ' + this.adx.min + ' / ' + this.adx.max);
}
}
};
module.exports = strat;
...so what's the status on how good the indicators work?
|
|
|
|
| binance usdt eth coin for trading |
|
Posted by: ankasem - 02-11-2018, 02:38 PM - Forum: Binance
- Replies (3)
|
 |
hi all
There is a responsibility to those who use the binance stock exchange
I have eth in my wallet
Can gekko usdt start as eth (for tradebot)
otherwise I should convert it to eth usdt
thank you
|
|
|
|
| Indicators based on HIGH and LOW values |
|
Posted by: chbinder - 02-11-2018, 12:25 PM - Forum: Strategy Development
- Replies (2)
|
 |
Hi all,
first of all, after having some issues with older gekko versions the current one is working like a charm. Thanks for all the great work!
I created some strategies that work fine and sure, after successfully testing more deeply I will share those here...
For my next "project" I want to create a trading strategy that works great in FOREX markets to verify if it can be used for crypto currencies, too. This strategy is based on two SMAs with the same period but calculated based on the HIGH and LOW values of the candles.
And that's why I kindly ask the community to point me to the right direction:
As I've seen all indicators (gekko, talib, tulip) are calculated based on the CLOSE values (please correct me if I'm wrong).
Is there a way to do what I explained above? If yes, how can this be achieved?
Many thanks for your support.
Best regards,
Christian
|
|
|
|
|