app/views/iro/positions/_table.haml in iron_warbler-2.0.7.22 vs app/views/iro/positions/_table.haml in iron_warbler-2.0.7.23
- old
+ new
@@ -4,21 +4,23 @@
%h5 Positions
%table.bordered
%thead
%tr
%th
+ %th.ticker
+ .a Stock
%th
.status
Status
%br
Expires on
%br
Strategy
- %th.ticker
- .a Stock
+ %th.q Q
%th.strikes
- .a outer_strike, inner_strike
+ -# .a outer_strike, inner_strike
+ Strike
%th.begin_price
.a Begin outer price, delta
%th.max-loss Max Loss
%th.max-gain Max Gain
%th
@@ -50,38 +52,42 @@
%tr
%td{ colspan: 18 }
-# %hr
.h-50px
+ -## tr
%tr{ class: [ position.strategy.kind, position.strategy.long_or_short ] }
+
%td.actions
- .flex-row
+ = position.status
+ .d-flex
= button_to 'x', position_path(position), method: :delete, data: { confirm: 'Are you sure?' }
= link_to '[~]', edit_position_path(position)
- = link_to '[refresh]', refresh_position_path(pos)
- - if position.next_reasons.present? && position.should_rollp && position.should_rollp > 0.5
- = button_to 'Roll', roll_position_path(position)
- - if position.next_reasons.present?
- .collapse-expand{ id: "ce-p-#{position.id}" } [Reasons]
- = render '/iro/positions/reasons', reasons: position.next_reasons
+ = link_to '[dup]', duplicate_position_path(position)
+ .d-flex
+ = link_to '[re]', refresh_position_path(pos)
+ - if true # position.next_reasons.present? && position.rollp > 0.5
+ = link_to '[roll]', prepare_to_roll_position_path(pos)
+ %td.ticker
+ = position.stock.ticker
+ %br
+ = pp_amount position.stock.last
+
%td.status.strategy.w-200px
- = position.status
+
+ %b
+ = position.expires_on.to_datetime.strftime("%b %d")
+ [#{ ( position.expires_on.to_date - Time.now.to_date ).to_i } DTE]
%br
- = position.expires_on.to_datetime.strftime("%b %d")
- [#{ ( position.expires_on.to_date - Time.now.to_date ).to_i } DTE]
- %br
%i.fa.fa-compress.collapse-expand{ id: "ce-pos-reasons-#{position.id}" }
#{position.strategy}
= render '/iro/strategies/show', strategy: position.strategy
- %td.ticker
- = position.stock.ticker
- <b>(#{position.quantity})</b>
- %br
- = pp_amount position.stock.last
+ %td.q
+ <b>#{position.quantity}</b>
%td.strikes
.long-or-short-item
.outer-strike= pp_amount position.outer_strike
.inner-strike= pp_amount position.inner_strike
@@ -92,13 +98,13 @@
<b>D</b> #{pp_delta position.begin_outer_delta}
.begin-inner-price
= pp_amount position.begin_inner_price
<b>D</b> #{pp_delta position.begin_inner_delta}
%td
- .max-loss= pp_amount position.max_loss * pos.q, precision: 0
+ .max-loss= pp_amount position.max_loss * pos.q * 100, precision: 0
%td
- .max-gain= pp_amount position.max_gain * pos.q, precision: 0
+ .max-gain= pp_amount position.max_gain * pos.q * 100, precision: 0
.max-gainp
-# = pp_percent( -1 * position.max_gain / position.max_loss ) rescue '-' # undef. for covered calls
%td.end_price
.long-or-short-item
@@ -107,19 +113,22 @@
<b>D</b> #{pp_delta position.end_outer_delta}
.end-inner-price
= pp_amount position.end_inner_price
<b>D</b> #{pp_delta position.end_inner_delta}
%td.net
- .a= pp_amount position.net_amount * pos.q, precision: 0 rescue '@TODO'
+ .a= pp_amount position.net_amount * pos.q * 100, precision: 0 rescue '@TODO'
.a <i>#{pp_percent position.net_amount / position.max_gain rescue '@TODO'}</i>
%td.breakeven
= pp_amount pos.breakeven rescue '@TODO'
%td.should_rollp
- <i> #{pp_percent position.should_rollp rescue '?'}</i>
- %td.next_position.mini
+ <i> #{pp_percent position.rollp, precision: 0}</i>
+ %td.next_position
+ - if position.next_reasons.present?
+ %i.fa.fa-expand.collapse-expand{ id: "pos-reasons-#{position.id}" } reasons
+ = render '/iro/positions/reasons', reasons: position.next_reasons
.a= position.next_symbol
.a= position.next_delta
.a
= pp_amount position.next_mark
\=>