이 전략의 핵심 아이디어는 최적의 투자 수익을 달성하기 위해 해당 날짜에 디지털 자산을 구매하고 달 말에 판매하여 매월 최고의 구매 날짜를 찾는 것입니다. 이 전략은 하루 내 가격 변동의 이점을 통해 과도한 수익을 얻고자하는 투자자에게 적합합니다.
이 전략은 사용자가 정의한 월간 구매 날짜와 판매 날짜를 기반으로 실행됩니다. 자산 구매를 통해 구매 날짜에 장점을 취하고 설정된 경우 판매 날짜에 포지션을 닫습니다. 그렇지 않으면 전략 종료 날짜에 포지션을 닫습니다. 이것은 다른 월간 구매 날짜에서 수익 차이를 테스트 할 수 있습니다.
구매 신호의 논리는: 사용자가 정의한 구매 날짜이고 전략의 유효한 날짜 범위 내에 있다면, 길게 가십시오.
클로즈 포지션 신호의 논리는 다음과 같습니다. 판매 날짜가 설정되어 있고 현재 판매 날짜라면, 클로즈 포지션입니다. 판매 날짜가 없지만 전략 종료 날짜를 넘어서면, 또한 클로즈 포지션입니다.
구매 후 가격 추락 위험
최적 구매 날짜 변경
잘못된 매개 변수 설정으로 인한 손실
입국 지점을 결정하는 데 더 많은 요인을 고려하십시오
포지션 관리 메커니즘을 최적화
다른 거래 시장으로 확장
이 전략은 매월 다른 구매 날짜에서 수익 차이를 테스트하여 최대 내일 가격 변동 날짜를 찾습니다. 높은 빈도 내일 거래에서 이익을 추구하는 투자자에게 과도한 수익을 가져올 수 있습니다. 입시 타이밍, 위치 관리 및 적용 범위를 확장하는 데 대한 추가 개선은 전략의 안정성과 수익성을 향상시킬 것입니다.
/*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()