Die Kernidee dieser Strategie besteht darin, jeden Monat das beste Kaufdatum zu finden, indem man digitale Vermögenswerte an diesem Datum kauft und am Ende des Monats verkauft, um eine optimale Anlagerendite zu erzielen.
Die Strategie läuft basierend auf dem vom Benutzer definierten monatlichen Kaufdatum und Verkaufdatum. Sie geht am Kaufdatum lang, indem sie Vermögenswerte kauft und schließt die Position am Verkaufdatum, wenn sie festgelegt ist. Ansonsten schließt sie die Position am Strategieenddatum. Dies kann die Gewinndifferenz von verschiedenen monatlichen Kaufdaten testen.
Die Logik für das Kaufsignal lautet: Wenn es sich um das vom Benutzer definierte Kaufdatum handelt und innerhalb des effektiven Datumsbereichs der Strategie liegt, gehen Sie lang.
Die Logik für das Schlusssignal lautet: Wenn das Verkaufsdatum festgelegt ist und es sich um das Verkaufsdatum jetzt handelt, schließt die Position; wenn kein Verkaufsdatum besteht, aber das Ende der Strategie überschritten ist, schließt sie auch die Position.
Preiscrashrisiko nach dem Kauf
Änderung des optimalen Kaufdatums
Verlust durch falsche Parameter-Einstellungen
Bei der Bestimmung des Eintrittspunktes sind weitere Faktoren zu berücksichtigen
Optimierung des Positionsmanagementmechanismus
Expansion auf andere Handelsmärkte
Diese Strategie findet das Datum der größten Intraday-Preisschwankung jeden Monat, indem sie die Gewinndifferenz von verschiedenen Kaufdaten testet. Sie kann für Anleger, die Gewinne aus dem Hochfrequenz-Intraday-Handel erzielen möchten, überschüssige Renditen bringen. Eine weitere Verbesserung bei der Bestimmung des Eintragszeitraums, des Positionsmanagements und der Erweiterung des Anwendungsbereichs wird die Stabilität und Rentabilität der Strategie verbessern.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-31 23:59:59 period: 1h basePeriod: 15m 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/ // © dennis.decoene //@version=4 strategy(title="Buy and Hold, which day of month is best to buy?", overlay=true) // Make input options that configure backtest date range startDate = input(title="Start Date", type=input.integer, defval=1, minval=1, maxval=31, group="Starting From") startMonth = input(title="Start Month", type=input.integer, defval=1, minval=1, maxval=12, group="Starting From") startYear = input(title="Start Year", type=input.integer, defval=2021, minval=1800, maxval=2100, group="Starting From") endDate = input(title="End Date", type=input.integer, defval=2, minval=1, maxval=31, group="Until") endMonth = input(title="End Month", type=input.integer, defval=10, minval=1, maxval=12, group="Until") endYear = input(title="End Year", type=input.integer, defval=2021, minval=1800, maxval=2100, group="Until") entryday = input(title="Entry Day", type=input.integer, defval=26, minval=1, maxval=31, tooltip="When to enter (buy the asset) each month") exitday = input(title="Exit Day", type=input.integer, defval=6, minval=1, maxval=31, tooltip="When to exit (sell the asset) each month") useExitDay= input(title="Close position on exit day?", type=input.bool, defval=false, tooltip="Use the Exit Day to close each months position it true or close at the end of the period (if false)") isEntryDay= (dayofmonth(time)==entryday) isExitDay= (dayofmonth(time)==exitday-1) inDateRange = true if (isEntryDay and inDateRange) strategy.entry(id="Buy", long=true) if (isExitDay and useExitDay) strategy.close_all() // Exit open market position when date range ends if (not inDateRange and not useExitDay) strategy.close_all()