cryptum 0.0.267 → 0.0.269

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e2062d12344f14e33eb69ae94a6590348e11ece15f71faf88fb29c9ae41917d0
4
- data.tar.gz: 8928742f4e03be3180e453456f968d7e5899b73633c88f022622df8db13b7cd8
3
+ metadata.gz: d40a387e6624886030d8bdaf44ffc1fe19d7d776810f6b369d4e0bc06f658b36
4
+ data.tar.gz: 26f2281e64fbfac162390bcc25be978e7e58498dd7fb4c6fa67e0e7c1d0f4e5e
5
5
  SHA512:
6
- metadata.gz: 25f5c7e69a16c95f47c27ad94eee574b9efa84d3a8907a8421bb5b89fdcee2abae4120aa546a46f89ca80f4598ad04a7adbdb16ab800034876dc9429227c8822
7
- data.tar.gz: c5c942d55ce5a293c7126c214417c057968048ae60ba489caae66720a6956dd7fd393d57f8d721f0995a77fad92f51dcd1b9647a6833804381256aa2e3be9d9f
6
+ metadata.gz: 62511617e610526d54b285f2fb8ae2b450ed9042c382edfcb7eaea4e88b60ea346c7401ba5ecba563b12e48cfba63ac51c6cbdede6097c67d78abf0c672369d9
7
+ data.tar.gz: f31542bfaa39f3a6d8c16b0362285bfc9cd79f6f36deec22957c1774348660f4a8a4cc8d6981b6490970403e4032bec28e82bf470c5d28129934f4fb4dcc6164
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2022-12-03 04:05:10 UTC using RuboCop version 1.39.0.
3
+ # on 2022-12-05 19:21:30 UTC using RuboCop version 1.39.0.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -41,13 +41,6 @@ Layout/EmptyLines:
41
41
  Exclude:
42
42
  - 'lib/cryptum/api.rb'
43
43
 
44
- # Offense count: 1
45
- # This cop supports safe autocorrection (--autocorrect).
46
- # Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
47
- Layout/ExtraSpacing:
48
- Exclude:
49
- - 'lib/cryptum/ui/order_plan.rb'
50
-
51
44
  # Offense count: 1
52
45
  # This cop supports safe autocorrection (--autocorrect).
53
46
  # Configuration parameters: EnforcedStyle, IndentationWidth.
@@ -82,14 +75,6 @@ Layout/MultilineOperationIndentation:
82
75
  - 'lib/cryptum/ui/order_execution.rb'
83
76
  - 'lib/cryptum/ui/ticker.rb'
84
77
 
85
- # Offense count: 1
86
- # This cop supports safe autocorrection (--autocorrect).
87
- # Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
88
- # SupportedStylesForExponentOperator: space, no_space
89
- Layout/SpaceAroundOperators:
90
- Exclude:
91
- - 'lib/cryptum/ui/order_plan.rb'
92
-
93
78
  # Offense count: 13
94
79
  # This cop supports safe autocorrection (--autocorrect).
95
80
  # Configuration parameters: AllowInHeredoc.
@@ -102,14 +87,14 @@ Layout/TrailingWhitespace:
102
87
  - 'lib/cryptum/ui/order_plan.rb'
103
88
  - 'lib/cryptum/ui/order_timer.rb'
104
89
 
105
- # Offense count: 75
90
+ # Offense count: 84
106
91
  Lint/UselessAssignment:
107
92
  Enabled: false
108
93
 
109
- # Offense count: 47
94
+ # Offense count: 48
110
95
  # Configuration parameters: AllowedMethods, AllowedPatterns, IgnoredMethods, CountRepeatedAttributes.
111
96
  Metrics/AbcSize:
112
- Max: 400
97
+ Max: 405
113
98
 
114
99
  # Offense count: 7
115
100
  # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, AllowedMethods, AllowedPatterns, IgnoredMethods.
@@ -127,27 +112,28 @@ Metrics/BlockNesting:
127
112
  Metrics/CyclomaticComplexity:
128
113
  Max: 73
129
114
 
130
- # Offense count: 66
115
+ # Offense count: 68
131
116
  # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, AllowedMethods, AllowedPatterns, IgnoredMethods.
132
117
  Metrics/MethodLength:
133
- Max: 383
118
+ Max: 389
134
119
 
135
- # Offense count: 16
120
+ # Offense count: 18
136
121
  # Configuration parameters: CountComments, CountAsOne.
137
122
  Metrics/ModuleLength:
138
123
  Max: 538
139
124
 
140
- # Offense count: 18
125
+ # Offense count: 19
141
126
  # Configuration parameters: AllowedMethods, AllowedPatterns, IgnoredMethods.
142
127
  Metrics/PerceivedComplexity:
143
128
  Max: 76
144
129
 
145
- # Offense count: 1
130
+ # Offense count: 3
146
131
  # This cop supports safe autocorrection (--autocorrect).
147
132
  # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
148
133
  # SupportedStyles: assign_to_condition, assign_inside_condition
149
134
  Style/ConditionalAssignment:
150
135
  Exclude:
136
+ - 'lib/cryptum/event/pane.rb'
151
137
  - 'lib/cryptum/option.rb'
152
138
 
153
139
  # Offense count: 1
@@ -29,11 +29,13 @@ module Cryptum
29
29
  :order_plan_index_offset,
30
30
  :order_plan_max_rows_to_display,
31
31
  :order_plan_row_to_select,
32
+ :order_plan_selected_data,
32
33
  :order_execute_win_active,
33
34
  :order_execute_details_win_active,
34
35
  :order_execute_index_offset,
35
36
  :order_execute_max_rows_to_display,
36
- :order_execute_row_to_select
37
+ :order_execute_row_to_select,
38
+ :order_execute_selected_data
37
39
 
38
40
  def initialize(opts = {})
39
41
  # option_choice = opts[:option_choice]
@@ -55,11 +57,13 @@ module Cryptum
55
57
  self.order_plan_index_offset = 0
56
58
  self.order_plan_max_rows_to_display = 6
57
59
  self.order_plan_row_to_select = order_plan_index_offset
60
+ self.order_plan_selected_data = { color: :white }
58
61
  self.order_execute_win_active = false
59
62
  self.order_execute_details_win_active = false
60
63
  self.order_execute_index_offset = 0
61
64
  self.order_execute_max_rows_to_display = 6
62
65
  self.order_execute_row_to_select = order_execute_index_offset
66
+ self.order_execute_selected_data = { color: :white }
63
67
 
64
68
  # TODO: Implement market_trend_reset / 144
65
69
  # Default = 10 minutes
@@ -34,32 +34,18 @@ module Cryptum
34
34
 
35
35
  terminal_win.key_press_event.key_enter = false
36
36
 
37
- if event_history.order_plan_win_active &&
38
- !event_history.order_plan_details_win_active &&
39
- !event_history.order_execute_win_active
40
-
41
- event_history.order_plan_win_active = false
42
- event_history.order_plan_details_win_active = true
43
- elsif !event_history.order_plan_win_active &&
44
- event_history.order_plan_details_win_active &&
45
- !event_history.order_execute_win_active
46
-
47
- event_history.order_plan_win_active = true
48
- event_history.order_plan_details_win_active = false
49
- end
50
-
51
- if event_history.order_execute_win_active &&
52
- !event_history.order_execute_details_win_active &&
53
- !event_history.order_plan_win_active
54
-
55
- event_history.order_execute_win_active = false
56
- event_history.order_execute_details_win_active = true
57
- elsif !event_history.order_execute_win_active &&
58
- event_history.order_execute_details_win_active &&
59
- !event_history.order_plan_win_active
60
-
61
- event_history.order_execute_win_active = true
62
- event_history.order_execute_details_win_active = false
37
+ if event_history.order_plan_win_active
38
+ if event_history.order_plan_details_win_active
39
+ event_history.order_plan_details_win_active = false
40
+ else
41
+ event_history.order_plan_details_win_active = true
42
+ end
43
+ elsif event_history.order_execute_win_active
44
+ if event_history.order_execute_details_win_active
45
+ event_history.order_execute_details_win_active = false
46
+ else
47
+ event_history.order_execute_details_win_active = true
48
+ end
63
49
  end
64
50
  rescue StandardError => e
65
51
  raise e
data/lib/cryptum/event.rb CHANGED
@@ -112,26 +112,48 @@ module Cryptum
112
112
  fiat_portfolio_file: fiat_portfolio_file
113
113
  )
114
114
 
115
- Cryptum::UI::OrderPlan.refresh(
116
- option_choice: option_choice,
117
- order_plan_win: terminal_win.order_plan_section,
118
- event_history: event_history,
119
- key_press_event: terminal_win.key_press_event,
120
- indicator_status: indicator_status,
121
- bot_conf: bot_conf,
122
- fiat_portfolio_file: fiat_portfolio_file
123
- )
115
+ unless event_history.order_plan_details_win_active
116
+ Cryptum::UI::OrderPlan.refresh(
117
+ option_choice: option_choice,
118
+ order_plan_win: terminal_win.order_plan_section,
119
+ event_history: event_history,
120
+ key_press_event: terminal_win.key_press_event,
121
+ indicator_status: indicator_status,
122
+ bot_conf: bot_conf,
123
+ fiat_portfolio_file: fiat_portfolio_file
124
+ )
125
+ end
124
126
 
125
- event_history = Cryptum::UI::OrderExecution.refresh(
126
- option_choice: option_choice,
127
- order_execute_win: terminal_win.order_execute_section,
128
- env: env,
129
- event_history: event_history,
130
- key_press_event: terminal_win.key_press_event,
131
- indicator_status: indicator_status,
132
- bot_conf: bot_conf,
133
- fiat_portfolio_file: fiat_portfolio_file
134
- )
127
+ if event_history.order_plan_details_win_active
128
+ Cryptum::UI::OrderPlanDetails.refresh(
129
+ option_choice: option_choice,
130
+ order_plan_details_win: terminal_win.order_plan_details_section,
131
+ event_history: event_history,
132
+ key_press_event: terminal_win.key_press_event
133
+ )
134
+ end
135
+
136
+ unless event_history.order_execute_details_win_active
137
+ event_history = Cryptum::UI::OrderExecution.refresh(
138
+ option_choice: option_choice,
139
+ order_execute_win: terminal_win.order_execute_section,
140
+ env: env,
141
+ event_history: event_history,
142
+ key_press_event: terminal_win.key_press_event,
143
+ indicator_status: indicator_status,
144
+ bot_conf: bot_conf,
145
+ fiat_portfolio_file: fiat_portfolio_file
146
+ )
147
+ end
148
+
149
+ if event_history.order_execute_details_win_active
150
+ Cryptum::UI::OrderExecuteDetails.refresh(
151
+ option_choice: option_choice,
152
+ order_execute_details_win: terminal_win.order_execute_details_section,
153
+ event_history: event_history,
154
+ key_press_event: terminal_win.key_press_event
155
+ )
156
+ end
135
157
 
136
158
  # Refresh Command Section for Cryptum Session Usage
137
159
  Cryptum::UI::Command.refresh(
@@ -0,0 +1,167 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'logger'
4
+
5
+ module Cryptum
6
+ module UI
7
+ # This plugin is used to Display Order Execute Details
8
+ # selected from the Order Execute Window Pane.
9
+ module OrderExecuteDetails
10
+ # Supported Method Parameters::
11
+ # Cryptum::UI::OrderExecuteDetails.refresh(
12
+ # )
13
+
14
+ public_class_method def self.refresh(opts = {})
15
+ option_choice = opts[:option_choice]
16
+ event_history = opts[:event_history]
17
+ order_execute_details_win = opts[:order_execute_details_win]
18
+ indicator_status = opts[:indicator_status]
19
+ key_press_event = opts[:key_press_event]
20
+
21
+ order = event_history.order_execute_selected_data
22
+ tpm = order[:tpm]
23
+ autotrade_percent = order[:autotrade_percent]
24
+ order_color = order[:color]
25
+
26
+ # UI
27
+ col_just1 = (Curses.cols - Cryptum::UI.col_first) - 1
28
+ col_just3 = (Curses.cols - Cryptum::UI.col_third) - 1
29
+ col_just4 = Curses.cols - Cryptum::UI.col_fourth
30
+
31
+ # ROW 1
32
+ out_line_no = 0
33
+ line_color = order_color
34
+ header_color = order_color
35
+ header_style = :bold
36
+ style = :bold
37
+ header_style = :reverse if event_history.order_execute_details_win_active
38
+
39
+ Cryptum::UI.line(
40
+ ui_win: order_execute_details_win,
41
+ out_line_no: out_line_no,
42
+ color: line_color
43
+ )
44
+
45
+ # ROW 2
46
+ out_line_no += 1
47
+ order_execute_details_win.setpos(out_line_no, Cryptum::UI.col_first)
48
+ order_execute_details_win.clrtoeol
49
+ Cryptum::UI.colorize(
50
+ ui_win: order_execute_details_win,
51
+ color: header_color,
52
+ style: header_style,
53
+ string: ''.ljust(col_just1, ' ')
54
+ )
55
+
56
+ header_str = "- ##{order[:plan_no]} ORDER HISTORY DETAILS -"
57
+ order_execute_details_win.setpos(
58
+ out_line_no,
59
+ Cryptum::UI.col_center(str: header_str)
60
+ )
61
+
62
+ Cryptum::UI.colorize(
63
+ ui_win: order_execute_details_win,
64
+ color: order_color,
65
+ style: :bold,
66
+ string: header_str
67
+ )
68
+
69
+ # ROW 3
70
+ out_line_no += 1
71
+ order_execute_details_win.setpos(out_line_no, Cryptum::UI.col_first)
72
+ order_execute_details_win.clrtoeol
73
+
74
+ risk_alloc_out = Cryptum.beautify_large_number(
75
+ value: order[:risk_alloc]
76
+ )
77
+ invest_out = Cryptum.beautify_large_number(
78
+ value: order[:invest]
79
+ )
80
+ price_out = Cryptum.beautify_large_number(
81
+ value: order[:price]
82
+ )
83
+ size_out = Cryptum.beautify_large_number(
84
+ value: order[:size]
85
+ )
86
+ target_price_out = Cryptum.beautify_large_number(
87
+ value: order[:target_price]
88
+ )
89
+ profit_out = Cryptum.beautify_large_number(
90
+ value: order[:profit]
91
+ )
92
+ plan_no = "#{order[:plan_no]}|"
93
+
94
+ created_at = order[:created_at]
95
+
96
+ invest = "$#{invest_out} @ "
97
+ tick = "$#{price_out} = "
98
+ size = "*#{size_out} + "
99
+ tpm_out = "#{order[:tpm]}% = "
100
+ targ_tick = "$#{target_price_out}"
101
+ profit = "|Profit: $#{order[:profit]}"
102
+
103
+ order_exec_ln = "#{created_at}|#{invest}#{tick}#{size}#{tpm_out}#{targ_tick}#{profit}"
104
+
105
+ Cryptum::UI.colorize(
106
+ ui_win: order_execute_details_win,
107
+ color: order_color,
108
+ style: style,
109
+ string: order_exec_ln.ljust(col_just1, '.')
110
+ )
111
+
112
+ # Clear to OK ROW
113
+ ok_row = 9
114
+ out_line_no += 1
115
+ to_ok_row = ok_row - 1
116
+ (out_line_no..to_ok_row).each do |clr_line|
117
+ order_execute_details_win.setpos(clr_line, Cryptum::UI.col_first)
118
+ Cryptum::UI.colorize(
119
+ ui_win: order_execute_details_win,
120
+ color: order_color,
121
+ style: :normal,
122
+ string: ''.ljust(col_just1, ' ')
123
+ )
124
+ end
125
+
126
+ # OK ROW
127
+ out_line_no = ok_row
128
+ order_execute_details_win.setpos(out_line_no, Cryptum::UI.col_first)
129
+ order_execute_details_win.clrtoeol
130
+ Cryptum::UI.colorize(
131
+ ui_win: order_execute_details_win,
132
+ color: order_color,
133
+ string: ''.ljust(col_just1, ' ')
134
+ )
135
+
136
+ header_str = '- OK -'
137
+ order_execute_details_win.setpos(
138
+ out_line_no,
139
+ Cryptum::UI.col_center(str: header_str)
140
+ )
141
+
142
+ Cryptum::UI.colorize(
143
+ ui_win: order_execute_details_win,
144
+ color: order_color,
145
+ style: :reverse,
146
+ string: header_str
147
+ )
148
+
149
+ order_execute_details_win.refresh
150
+ rescue Interrupt
151
+ # Exit Gracefully if CTRL+C is Pressed During Session
152
+ Cryptum.exit_gracefully(which_self: self)
153
+ rescue StandardError => e
154
+ raise e
155
+ end
156
+
157
+ # Display Usage for this Module
158
+
159
+ public_class_method def self.help
160
+ puts "USAGE:
161
+ #{self}.refresh(
162
+ )
163
+ "
164
+ end
165
+ end
166
+ end
167
+ end
@@ -421,12 +421,18 @@ module Cryptum
421
421
  end
422
422
 
423
423
  if order_history_meta.any?
424
+ selected_order = event_history.order_execute_selected_data
424
425
  order_history_meta.reverse[first_row..last_row].each do |meta|
425
426
  out_line_no += 1
426
427
  current_line = out_line_no - 2
427
428
 
428
429
  style = :normal
429
- style = :highlight if event_history.order_execute_row_to_select == current_line
430
+ if event_history.order_execute_row_to_select == current_line
431
+ style = :highlight
432
+ selected_order = meta
433
+ selected_order[:color] = meta[:color]
434
+ end
435
+
430
436
  risk_alloc_out = Cryptum.beautify_large_number(
431
437
  value: meta[:risk_alloc]
432
438
  )
@@ -476,6 +482,7 @@ module Cryptum
476
482
  string: order_exec_ln.ljust(col_just1, '.')
477
483
  )
478
484
  end
485
+ event_history.order_execute_selected_data = selected_order
479
486
  end
480
487
 
481
488
  # ROW 10
@@ -321,12 +321,20 @@ module Cryptum
321
321
  event_history.order_plan_index_offset = first_row
322
322
  end
323
323
 
324
+ selected_order = event_history.order_plan_selected_data
324
325
  order_plan[first_row..last_row].each do |order|
325
326
  out_line_no += 1
326
327
  current_line = out_line_no - 2
327
328
 
328
329
  style = :normal
329
- style = :highlight if event_history.order_plan_row_to_select == current_line
330
+ if event_history.order_plan_row_to_select == current_line
331
+ style = :highlight
332
+ selected_order = order
333
+ selected_order[:tpm] = tpm
334
+ selected_order[:autotrade_percent] = autotrade_percent
335
+ selected_order[:color] = plan_color
336
+ end
337
+
330
338
  fiat_avail_out = Cryptum.beautify_large_number(
331
339
  value: order[:fiat_available]
332
340
  )
@@ -348,11 +356,11 @@ module Cryptum
348
356
  alloc = "$#{risk_alloc_out} @ #{order[:allocation_percent]}% = "
349
357
  invest = "$#{invest_out} + #{tpm_out}% = "
350
358
 
351
- returns = "$#{return_out}|"
359
+ returns = "$#{return_out}|"
352
360
  profit = "Profit: $#{profit_out}"
353
361
 
354
362
  order_plan_invest = "#{plan_no}#{fiat}#{alloc}#{invest}"
355
- order_plan_return = "#{returns}#{profit}"
363
+ order_plan_return = "#{returns}#{profit}"
356
364
 
357
365
  order_plan_win.setpos(out_line_no, Cryptum::UI.col_first)
358
366
  order_plan_win.clrtoeol
@@ -363,6 +371,7 @@ module Cryptum
363
371
  string: "#{order_plan_invest}#{order_plan_return}".ljust(col_just1, '.')
364
372
  )
365
373
  end
374
+ event_history.order_plan_selected_data = selected_order
366
375
 
367
376
  if order_plan.length < 9
368
377
  lines_to_clear = 9 - order_plan.length
@@ -407,8 +416,6 @@ module Cryptum
407
416
  )
408
417
 
409
418
  order_plan_win.refresh
410
-
411
- # event_history
412
419
  rescue Interrupt
413
420
  # Exit Gracefully if CTRL+C is Pressed During Session
414
421
  Cryptum.exit_gracefully(which_self: self)
@@ -18,21 +18,128 @@ module Cryptum
18
18
  indicator_status = opts[:indicator_status]
19
19
  key_press_event = opts[:key_press_event]
20
20
 
21
- color = :white
21
+ order = event_history.order_plan_selected_data
22
+ tpm = order[:tpm]
23
+ autotrade_percent = order[:autotrade_percent]
24
+ order_color = order[:color]
22
25
 
23
26
  # UI
24
- col_just4 = (Curses.cols - Cryptum::UI.col_fourth) - 1
27
+ col_just1 = (Curses.cols - Cryptum::UI.col_first) - 1
28
+ col_just3 = (Curses.cols - Cryptum::UI.col_third) - 1
29
+ col_just4 = Curses.cols - Cryptum::UI.col_fourth
25
30
 
26
31
  # ROW 1
27
- # COLUMN 1
28
32
  out_line_no = 0
33
+ line_color = order_color
34
+ header_color = order_color
35
+ header_style = :bold
36
+ style = :bold
37
+ header_style = :reverse if event_history.order_plan_details_win_active
38
+
39
+ Cryptum::UI.line(
40
+ ui_win: order_plan_details_win,
41
+ out_line_no: out_line_no,
42
+ color: line_color
43
+ )
44
+
45
+ # ROW 2
46
+ out_line_no += 1
29
47
  order_plan_details_win.setpos(out_line_no, Cryptum::UI.col_first)
30
48
  order_plan_details_win.clrtoeol
31
49
  Cryptum::UI.colorize(
32
50
  ui_win: order_plan_details_win,
33
- color: :white,
51
+ color: header_color,
52
+ style: header_style,
53
+ string: ''.ljust(col_just1, ' ')
54
+ )
55
+
56
+ header_str = "- ORDER SLICE ##{order[:plan_no]} DETAILS -"
57
+ order_plan_details_win.setpos(
58
+ out_line_no,
59
+ Cryptum::UI.col_center(str: header_str)
60
+ )
61
+
62
+ Cryptum::UI.colorize(
63
+ ui_win: order_plan_details_win,
64
+ color: order_color,
34
65
  style: :bold,
35
- string: 'Order Details'
66
+ string: header_str
67
+ )
68
+
69
+ # ROW 3
70
+ out_line_no += 1
71
+ order_plan_details_win.setpos(out_line_no, Cryptum::UI.col_first)
72
+ order_plan_details_win.clrtoeol
73
+
74
+ fiat_avail_out = Cryptum.beautify_large_number(
75
+ value: order[:fiat_available]
76
+ )
77
+ risk_alloc_out = Cryptum.beautify_large_number(
78
+ value: order[:risk_alloc]
79
+ )
80
+ invest_out = Cryptum.beautify_large_number(
81
+ value: order[:invest]
82
+ )
83
+ profit_out = Cryptum.beautify_large_number(
84
+ value: order[:profit]
85
+ )
86
+ tpm_out = format('%0.2f', tpm)
87
+ return_out = Cryptum.beautify_large_number(
88
+ value: order[:return]
89
+ )
90
+ plan_no = "#{order[:plan_no]}|"
91
+ fiat = "#{autotrade_percent}% of $#{fiat_avail_out} = "
92
+ alloc = "$#{risk_alloc_out} @ #{order[:allocation_percent]}% = "
93
+ invest = "$#{invest_out} + #{tpm_out}% = "
94
+
95
+ returns = "$#{return_out}|"
96
+ profit = "Profit: $#{profit_out}"
97
+
98
+ order_plan_invest = "#{plan_no}#{fiat}#{alloc}#{invest}"
99
+ order_plan_return = "#{returns}#{profit}"
100
+
101
+ Cryptum::UI.colorize(
102
+ ui_win: order_plan_details_win,
103
+ color: order_color,
104
+ style: style,
105
+ string: "#{order_plan_invest}#{order_plan_return}".ljust(col_just1, '.')
106
+ )
107
+
108
+ # Clear to OK ROW
109
+ ok_row = 9
110
+ out_line_no += 1
111
+ to_ok_row = ok_row - 1
112
+ (out_line_no..to_ok_row).each do |clr_line|
113
+ order_plan_details_win.setpos(clr_line, Cryptum::UI.col_first)
114
+ Cryptum::UI.colorize(
115
+ ui_win: order_plan_details_win,
116
+ color: order_color,
117
+ style: :normal,
118
+ string: ''.ljust(col_just1, ' ')
119
+ )
120
+ end
121
+
122
+ # OK ROW
123
+ out_line_no = ok_row
124
+ order_plan_details_win.setpos(out_line_no, Cryptum::UI.col_first)
125
+ order_plan_details_win.clrtoeol
126
+ Cryptum::UI.colorize(
127
+ ui_win: order_plan_details_win,
128
+ color: order_color,
129
+ string: ''.ljust(col_just1, ' ')
130
+ )
131
+
132
+ header_str = '- OK -'
133
+ order_plan_details_win.setpos(
134
+ out_line_no,
135
+ Cryptum::UI.col_center(str: header_str)
136
+ )
137
+
138
+ Cryptum::UI.colorize(
139
+ ui_win: order_plan_details_win,
140
+ color: order_color,
141
+ style: :reverse,
142
+ string: header_str
36
143
  )
37
144
 
38
145
  order_plan_details_win.refresh
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Cryptum
4
- VERSION = '0.0.267'
4
+ VERSION = '0.0.269'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cryptum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.267
4
+ version: 0.0.269
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
@@ -409,6 +409,7 @@ files:
409
409
  - lib/cryptum/ui/command.rb
410
410
  - lib/cryptum/ui/key_press_event.rb
411
411
  - lib/cryptum/ui/market_trend.rb
412
+ - lib/cryptum/ui/order_execute_details.rb
412
413
  - lib/cryptum/ui/order_execution.rb
413
414
  - lib/cryptum/ui/order_plan.rb
414
415
  - lib/cryptum/ui/order_plan_details.rb