
Diese Strategie ist dynamisch ausgeglichen mit 50% Kapital und 50% Positionen und ermöglicht eine Risikokontrolle durch ständige Anpassung der Positionen und des Kapitalverhältnisses.
Das anfängliche Kapital beträgt 1 Mio. Yuan, das in 50% Kapital und 50% Positionen aufgeteilt ist.
Wenn der Restbetrag an jedem Tag des Handelszyklus größer ist als das 1,05fache der nicht realisierten Gewinne, wird der Restbetrag um 2,5% erhöht.
Wenn der Verlust nicht größer als das 1,05-fache des Restbetrags ist, wird ein Teil der Position verkauft, um die Position wieder ins Gleichgewicht zu bringen.
Nach Abschluss des Handels wird der Rest der Position liquidiert.
Durch die dynamische Balance von Kapital und Positionen können Risiken effektiv kontrolliert und große Verluste bei Extremsituationen vermieden werden.
Es ist nicht notwendig, die Märkte häufig zu überwachen, sondern nur das Verhältnis von Kapital und Positionen anzupassen. Die Bedienung ist einfach und eignet sich für Investoren, die viel zu tun haben.
Es ist möglich, die Risikopräferenzen von verschiedenen Anlegern durch die Anpassung der Parameter an die Bedürfnisse der einzelnen Anleger zu ändern.
Es ist unmöglich, die kurzfristigen Schwankungen des Marktes zu erfassen, und der Gewinnraum ist begrenzt.
Wenn es zu einem langfristigen einseitigen Durchbruch kommt, kann dies dazu führen, dass die Positionsquote zu niedrig ist, um die Entwicklung zu erfassen.
Die falsche Einstellung der Parameter kann dazu führen, dass die Positionen zu häufig angepasst werden oder dass die Kapitalnutzung nicht hoch ist.
Es können weitere Parameter eingeführt werden, um eine genauere Kontrolle der Positionen und des Kapitalanteils zu ermöglichen.
Es kann mit einem Stop-Loss-Stopp-Prinzip kombiniert werden, um bei größeren Positionen angemessene Verluste zu verursachen.
Die Anpassung der Strategie kann durch die Testung verschiedener Parameter-Einstellungen für den Handelsprozess verbessert werden.
Diese Strategie verwirklicht das Ziel der Risikokontrolle durch die dynamische Balance von Kapital und Positionen. Die Bedienung ist im Vergleich zu anderen Strategien einfach und leicht zu realisieren. In der Folge kann die Strategie durch die Einführung von mehr anpassbaren Parametern und in Kombination mit anderen Strategieideen verbessert werden.
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-18 19:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("00631L Trading Simulation", shorttitle="Sim", overlay=true, initial_capital = 1000000)
// 设置本金
capital = 1000000
// 设置购买和出售日期范围
start_date = timestamp(2020, 11, 4)
next_date = timestamp(2020, 11, 5)
sell_date = timestamp(2023, 10, 24)
end_date = timestamp(2023, 10, 25) // 结束日期改为2023年10月25日
// 判断是否在交易期间
in_trade_period = true
// 实现的盈亏
realized_profit_loss = strategy.netprofit
plot(realized_profit_loss, title="realized_profit_loss", color=color.blue)
// 未实现的盈亏
open_profit_loss = strategy.position_size * open
plot(open_profit_loss, title="open_profit_loss", color=color.red)
// 剩余资金
remaining_funds = capital + realized_profit_loss - (strategy.position_size * strategy.position_avg_price)
plot(remaining_funds, title="remaining_funds", color=color.yellow)
// 總權益
total_price = remaining_funds + open_profit_loss
plot(total_price, title="remaining_funds", color=color.white)
// 购买逻辑:在交易期间的每个交易日买入 daily_investment 金额的产品
first_buy = time >= start_date and time <= next_date
buy_condition = in_trade_period and dayofmonth != dayofmonth[1]
// 出售邏輯 : 在交易期间的截止日出售所有商品。
sell_all = time >= sell_date
// 在交易期間的第一日買入50%本金
if first_buy
strategy.order("First", strategy.long, qty = capital/2/open)
// 在每个K线的开盘时进行买入
// 加碼邏輯 : 剩余资金 > 未实现的盈亏 * 1.05
add_logic = remaining_funds > open_profit_loss * 1.05
if buy_condition
strategy.order("Buy", strategy.long, when = add_logic, qty = remaining_funds * 0.025 / open)
//
// 減碼邏輯 : 剩余资金 > 未实现的盈亏 * 1.05
sub_logic = open_profit_loss > remaining_funds * 1.05
if buy_condition
strategy.order("Sell", strategy.short, when = sub_logic, qty = open_profit_loss * 0.025/open)
//
strategy.order("Sell_all", strategy.short, when = sell_all, qty = strategy.position_size)
// 绘制交易期间的矩形区域
bgcolor(in_trade_period ? color.green : na, transp=90)