Timeframe
5m
Direction
Long Only
Stoploss
-3.0%
Trailing Stop
No
ROI
0m: 5.0%
Interface Version
N/A
Startup Candles
N/A
Indicators
1
freqtrade/freqtrade-strategies
Strategy 003 author@: Gerald Lonlas github@: https://github.com/freqtrade/freqtrade-strategies
import logging
import json
from typing import Dict
from pandas import DataFrame
from freqtrade.strategy.interface import IStrategy
import talib.abstract as ta
logger = logging.getLogger(__name__)
class FreqSignalsWebhookDataProvider(IStrategy):
minimal_roi = {
"0": 0.05
}
stoploss = -0.03
timeframe = '5m'
plot_config = {
"main_plot": {},
"subplots": {
"RSI": {
"rsi": {}
},
}
}
def populate_indicators(self, df: DataFrame, metadata: dict) -> DataFrame:
# Some logic to establish a signal. For simplicity, using RSI.
df['rsi'] = ta.RSI(df, timeperiod=14)
msg = json.dumps({
# required fields
"symbol": metadata['pair'],
"value": round(df.iloc[-1]["rsi"], 4),
"ttl_minutes": 60,
"data_set_id": 'bcea098e-aca4-4bb7-b30e-060625342b22',
# any additional context
"rsi": round(df.iloc[-1]["rsi"], 4),
"price": round(df.iloc[-1]["close"], 4),
"last_move": round(df.iloc[-1]["close"] - df.iloc[-2]["close"], 4),
})
self.dp.send_msg(msg)
return df
def populate_entry_trend(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
# Not making any trades, just submitting signals
dataframe["enter_long"] = 0
return dataframe
def populate_exit_trend(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
# Not making any trades, just submitting signals
dataframe["exit_long"] = 0
return dataframe