Skip to content

Commit

Permalink
Display the signal candle analyzed in telegram.
Browse files Browse the repository at this point in the history
  • Loading branch information
mentisXbot committed May 31, 2022
1 parent 34a44b9 commit 7fe8b76
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
20 changes: 20 additions & 0 deletions freqtrade/freqtradebot.py
Original file line number Diff line number Diff line change
Expand Up @@ -852,6 +852,16 @@ def _notify_enter(self, trade: Trade, order: Dict, order_type: Optional[str] = N
'current_rate': current_rate,
}

# display the candle analyzed in telegram
analyzed_df, _ = self.dataprovider.get_analyzed_dataframe(trade.pair,
self.strategy.timeframe)
analyzed_candle = analyzed_df.iloc[-1] if len(analyzed_df) > 0 else None
if analyzed_candle is not None:
candle_columns = analyzed_candle[['date', 'open', 'high', 'low', 'close']]
msg.update({
'analyzed_candle': candle_columns.to_json(date_unit='s', date_format='iso')
})

# Send the message
self.rpc.send_msg(msg)

Expand Down Expand Up @@ -1540,6 +1550,16 @@ def _notify_exit(self, trade: Trade, order_type: str, fill: bool = False) -> Non
'fiat_currency': self.config['fiat_display_currency'],
})

# display the candle analyzed in telegram
analyzed_df, _ = self.dataprovider.get_analyzed_dataframe(trade.pair,
self.strategy.timeframe)
analyzed_candle = analyzed_df.iloc[-1] if len(analyzed_df) > 0 else None
if analyzed_candle is not None:
candle_columns = analyzed_candle[['date', 'open', 'high', 'low', 'close']]
msg.update({
'analyzed_candle': candle_columns.to_json(date_unit='s', date_format='iso')
})

# Send the message
self.rpc.send_msg(msg)

Expand Down
8 changes: 8 additions & 0 deletions freqtrade/rpc/telegram.py
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,8 @@ def _format_entry_msg(self, msg: Dict[str, Any]) -> str:
f" {entry_side['entered'] if is_fill else entry_side['enter']} {msg['pair']}"
f" (#{msg['trade_id']})\n"
)
if msg.get('analyzed_candle'):
message += f"*Analyzed Candle:* `{msg['analyzed_candle']}`\n"
message += f"*Enter Tag:* `{msg['enter_tag']}`\n" if msg.get('enter_tag', None) else ""
message += f"*Amount:* `{msg['amount']:.8f}`\n"
if msg.get('leverage') and msg.get('leverage', 1.0) != 1.0:
Expand Down Expand Up @@ -288,6 +290,12 @@ def _format_exit_msg(self, msg: Dict[str, Any]) -> str:
message = (
f"{msg['emoji']} *{msg['exchange']}:* "
f"{'Exited' if is_fill else 'Exiting'} {msg['pair']} (#{msg['trade_id']})\n"
)
if not is_fill and msg.get('analyzed_candle'):
message += (
f"*Analyzed Candle:* `{msg['analyzed_candle']}`\n"
)
message += (
f"*{'Profit' if is_fill else 'Unrealized Profit'}:* "
f"`{msg['profit_ratio']:.2%}{msg['profit_extra']}`\n"
f"*Enter Tag:* `{msg['enter_tag']}`\n"
Expand Down

0 comments on commit 7fe8b76

Please sign in to comment.