cryptum 0.0.429 → 0.0.431
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +5 -5
- data/lib/cryptum/log.rb +1 -1
- data/lib/cryptum/order_book/generate.rb +18 -0
- data/lib/cryptum/order_book/market_trend.rb +1 -7
- data/lib/cryptum/ui/order/execute.rb +29 -10
- data/lib/cryptum/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: efc9ac08fc48ca7aa7674359ea95d662af6cade3fc2a0249b19ce03bc996f3fb
|
4
|
+
data.tar.gz: 3b6ddc0e658f076ee6f80f2f4a399d9192292c2ce090a7056b26c51a0cb7fd2a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aff4e41fe11057b9d0b401c78b27dae432a8756ec6a02b265b5b1eb580999954d0ae8ace3390804544920f89eeed141467d240f346603582a100ba6b1885ed61
|
7
|
+
data.tar.gz: da014125c73aba67a997bb76b2a9476a1074b35ae51973b4b6a44833ab3bc5c410c572d249ddfae3116f1e75581c18ec74daf6254a2610c56bdd4b632322fe43
|
data/.rubocop.yml
CHANGED
@@ -6,7 +6,7 @@ Layout/LineLength:
|
|
6
6
|
Lint/UselessRescue:
|
7
7
|
Enabled: false
|
8
8
|
Metrics/AbcSize:
|
9
|
-
Max:
|
9
|
+
Max: 436.3
|
10
10
|
Metrics/BlockLength:
|
11
11
|
Max: 138
|
12
12
|
Metrics/BlockNesting:
|
@@ -14,13 +14,13 @@ Metrics/BlockNesting:
|
|
14
14
|
Metrics/ClassLength:
|
15
15
|
Max: 128
|
16
16
|
Metrics/CyclomaticComplexity:
|
17
|
-
Max:
|
17
|
+
Max: 86
|
18
18
|
Metrics/MethodLength:
|
19
|
-
Max:
|
19
|
+
Max: 418
|
20
20
|
Metrics/ModuleLength:
|
21
|
-
Max:
|
21
|
+
Max: 428
|
22
22
|
Metrics/PerceivedComplexity:
|
23
|
-
Max:
|
23
|
+
Max: 84
|
24
24
|
Style/HashSyntax:
|
25
25
|
EnforcedShorthandSyntax: never
|
26
26
|
|
data/lib/cryptum/log.rb
CHANGED
@@ -68,7 +68,7 @@ module Cryptum
|
|
68
68
|
logger.level = Logger::WARN
|
69
69
|
else
|
70
70
|
level_error = "ERROR: Invalid log level. Valid options are:\n"
|
71
|
-
level_error += ":
|
71
|
+
level_error += ":debug\n:error\n:fatal\n:info\n:learning\n:unknown\n:warn\n"
|
72
72
|
raise level_error
|
73
73
|
end
|
74
74
|
|
@@ -70,6 +70,24 @@ module Cryptum
|
|
70
70
|
File.read(order_book_file),
|
71
71
|
symbolize_names: true
|
72
72
|
)
|
73
|
+
|
74
|
+
# Only keep order history meta for those hashes
|
75
|
+
# that exist in the last order history response
|
76
|
+
# :white ones will be kept for 24 hrs and handled
|
77
|
+
# via Cryptum::OrderBook::MarketTrend.reset
|
78
|
+
# This exist primarily to clean up meta data if the
|
79
|
+
# bot crashes.
|
80
|
+
order_book[:order_history_meta].keep_if do |ohm|
|
81
|
+
order_book[:order_history].find do |oh|
|
82
|
+
(oh[:id] == ohm[:buy_order_id] || oh[:id] == ohm[:sell_order_id]) && (
|
83
|
+
ohm[:color].to_sym == :cyan ||
|
84
|
+
ohm[:color].to_sym == :green ||
|
85
|
+
ohm[:color].to_sym == :magenta ||
|
86
|
+
ohm[:color].to_sym == :red ||
|
87
|
+
ohm[:color].to_sym == :yellow
|
88
|
+
)
|
89
|
+
end
|
90
|
+
end
|
73
91
|
end
|
74
92
|
|
75
93
|
event_history = Cryptum::Event::History.new(
|
@@ -67,22 +67,16 @@ module Cryptum
|
|
67
67
|
# TO AVOID TICKER PRICE SYNCING ISSUES.
|
68
68
|
event_history = opts[:event_history]
|
69
69
|
|
70
|
-
# order_history = event_history.order_book[:order_history]
|
71
|
-
order_history_meta = event_history.order_book[:order_history_meta]
|
72
|
-
|
73
70
|
# Only retain past 24 hours of
|
74
71
|
# order history meta for expired
|
75
72
|
# keep open limit sell orders indefintely
|
76
73
|
before_twenty_four_hrs_ago = Time.now - 86_400
|
77
|
-
order_history_meta.delete_if do |ohm|
|
74
|
+
event_history.order_book[:order_history_meta].delete_if do |ohm|
|
78
75
|
next unless ohm[:color] == 'white'
|
79
76
|
|
80
77
|
Time.parse(ohm[:done_at]) < before_twenty_four_hrs_ago
|
81
78
|
end
|
82
79
|
|
83
|
-
# Write order_history_meta back to event_history object
|
84
|
-
event_history.order_book[:order_history_meta] = order_history_meta
|
85
|
-
|
86
80
|
# Reset Market Trend Counter
|
87
81
|
event_history.order_book[:market_trend][:buy] = 0
|
88
82
|
event_history.order_book[:market_trend][:sell] = 0
|
@@ -457,15 +457,34 @@ module Cryptum
|
|
457
457
|
)
|
458
458
|
plan_no = meta[:plan_no]
|
459
459
|
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
460
|
+
order_exec_last_ln = '____-__-__ __:__:__-____'
|
461
|
+
case meta[:color].to_sym
|
462
|
+
when :cyan, :red
|
463
|
+
buy_created_at_hash_arr = order_history.select do |oh|
|
464
|
+
oh[:id] == meta[:buy_order_id]
|
465
|
+
end
|
466
|
+
|
467
|
+
unless buy_created_at_hash_arr.empty?
|
468
|
+
order_exec_last_ln = Time.parse(
|
469
|
+
buy_created_at_hash_arr.first[:created_at]
|
470
|
+
).strftime('%Y-%m-%d %H:%M:%S%z')
|
471
|
+
end
|
472
|
+
when :green, :white
|
473
|
+
if meta[:done_at]
|
474
|
+
order_exec_last_ln = Time.parse(
|
475
|
+
meta[:done_at]
|
476
|
+
).strftime('%Y-%m-%d %H:%M:%S%z')
|
477
|
+
end
|
478
|
+
when :magenta, :yellow
|
479
|
+
sell_created_at_hash_arr = order_history.select do |oh|
|
480
|
+
oh[:id] == meta[:sell_order_id]
|
481
|
+
end
|
482
|
+
|
483
|
+
unless sell_created_at_hash_arr.empty?
|
484
|
+
order_exec_last_ln = Time.parse(
|
485
|
+
sell_created_at_hash_arr.first[:created_at]
|
486
|
+
).strftime('%Y-%m-%d %H:%M:%S%z')
|
487
|
+
end
|
469
488
|
end
|
470
489
|
|
471
490
|
invest = "$#{invest_out} @ "
|
@@ -475,7 +494,7 @@ module Cryptum
|
|
475
494
|
targ_tick = "$#{target_price_out}"
|
476
495
|
profit = "|Profit: $#{meta[:profit]}"
|
477
496
|
|
478
|
-
order_exec_ln = "#{
|
497
|
+
order_exec_ln = "#{order_exec_last_ln}|#{invest}#{tick}#{size}#{tpm_out}#{targ_tick}#{profit}|#{plan_no}"
|
479
498
|
|
480
499
|
order_execute_win.setpos(out_line_no, Cryptum::UI.col_first)
|
481
500
|
order_execute_win.clrtoeol
|
data/lib/cryptum/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cryptum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.431
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 0day Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-05-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|