
Cette stratégie vise à résoudre le problème de l’impossibilité de définir le levier lors de la rétroaction du script Pine, pour réaliser un profit de levier. La stratégie calcule le nombre d’opérations ouvertes dynamiquement en calculant les intérêts de la stratégie, le multiplicateur de levier et le prix de clôture définis.
Lev = math.max(math.round(strategy.equity * leverage / close), 0)Il est important d’avoir une vision claire de l’avenir.Cette stratégie implémente la mise en place du levier dans le script Pine, résout le problème de l’impossibilité d’imiter le levier en retour, calcule le lien entre le nombre d’opérateurs ouverts et les droits et intérêts, et réalise un profit de levier. La stratégie est simple et efficace, peut être optimisée et vaut la peine d’être apprise.
/*backtest
start: 2022-12-22 00:00:00
end: 2023-12-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © RingsCherrY
//@version=5
strategy("How to use Leverage in PineScript", overlay=true, pyramiding=1, initial_capital=1000000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.04)
//////////////////////////////////////////
////////////////Indicators////////////////
//////////////////////////////////////////
length = input( 14 )
overSold = input( 30 )
overBought = input( 70 )
price = close
vrsi = ta.rsi(price, length)
co = ta.crossover(vrsi, overSold)
cu = ta.crossunder(vrsi, overBought)
//////////////////////////////////////////
/////////////////Leverage/////////////////
//////////////////////////////////////////
//The number of decimal places for each position opening, i.e., the accuracy
precision = input.int(1,title='Precision')
//Leverage, the default is 1, here is not recommended to open a high leverage
leverage = input.int(1,title='Leverage',minval = 1, maxval = 100 ,step = 1)
//Calculate the number of open contracts, here using equity for calculation, considering that everyone compound interest is used for trading equity
Lev = math.max(math.round(strategy.equity * leverage / close , precision), 0)
if (not na(vrsi))
if (co)
strategy.entry("RsiLE", strategy.long,qty = Lev, comment="RsiLE")
if (cu)
strategy.entry("RsiSE", strategy.short,qty = Lev, comment="RsiSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)