この戦略は,現在の取引日中に突破の取引機会を見つけるために,フィボナッチリトレースメントレベルと組み合わせて,毎日の最高値と最低値を計算します.価格が日の最高価格を突破すると,上昇戦略をとり,価格が日の最低価格を突破すると,下落戦略をとります.
この戦略の基本的な論理は次のとおりです
最高価格の日最高価格日 最低価格日 最低価格日 毎日の市場開業日に記録する.
0.236 と 0.786 の2つのフィボナッチリトレースメントレベルを計算します.
fib236High = dayLow + 0.236 * (dayHigh - dayLow) 日高 = 日低 + 0.236 * (日高 - 日低)
fib786High = dayLow + 0.786 * (dayHigh - dayLow) 日高 = 日低 + 0.786 * (日高 - 日低)
閉じる価格が日中を突破すると,買い信号が生成され,閉じる価格が日中を突破すると,売り信号が生成されます.
買い/売るシグナルに従って,対応する上昇・下落戦略をとる.
この戦略は,最も高い価格,最も低い価格,フィボナッチレベルを巧みに組み合わせ,昼間取引中に突破が起こるときに取引機会を見つけます.それは昼間の取引セッション中にトレンド逆転を捕捉できるトレンド追跡戦略の一種です.
この戦略の主な利点は以下の通りです.
中日取引の頻度が高く,昼間の取引中に価格突破を記録する.
フィボナッチリトレースメントの 特定の技術指標のサポートにより 新しい高値や新低値を追いかけるだけではなく
最高値と最低値を基準値として使うことは,ある程度力があります.
取引の論理は単純で明確で,理解し実行しやすく,定量取引に適しています.
最高価格,最低価格,フィボナッチレベルを表示することは視覚分析のために設定できます.
この戦略にはいくつかのリスクもあります:
日中の取引が頻繁な場合,取引コストとスライドリスクが増加する可能性があります.
日中の突破は偽の突破であり,上昇または下落の信号が間違っているリスクがあります.
ストップロスの論理はなく 損失が増えるリスクもあります
基本的な分析を組み合わせることなく 純粋に技術的に動いています
対策:
コスト効果を減らすために,ポジションのサイズを適切に調整する.
より多くの技術指標を組み合わせて 誤った突破信号をフィルタリングします
移動ストップ損失戦略を増やして 単一の損失を制御する
市場逆転の影響を避けるために 基本データ分析を組み合わせる.
この戦略の主要な最適化方向は:
信号の信頼性を向上させるため,複数の技術指標の組み合わせを増やす.
自動ストップロスの戦略を追加して損失を制御します
買い売り戦略のパラメータを最適化し ポジション管理を調整する
高周波因子に基づいて,波動性,音量比,その他のフィルタリング信号を組み合わせる.
マシン学習方法を使って より良いパラメータの組み合わせを見つけます
最高価格や最低価格の単なるクロスオーバーではなく ダイナミックな退出メカニズムを確立する.
このイントラデイ高低価格圧縮フィボナッチ戦略は比較的シンプルで,価格レベルの短期的な突破を捕獲することで利益を得ることができます.指標最適化,ストップ損失管理,パラメータ調整などの分野では戦略最適化に大きな余地があります.
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Day High/Low Fibonacci Levels Strategy", shorttitle="DHL Fibonacci", overlay=true) // Calculate the day's high and low var float dayHigh = na var float dayLow = na if change(time("D")) dayHigh := high dayLow := low // Define input for plotting lines showLines = input(true, title="Show Day High/Low Lines") showFibLevels = input(true, title="Show Fibonacci Levels") // Plot the day's high and low as lines plot(showLines ? dayHigh : na, color=color.green, style=plot.style_line, linewidth=1, title="Day High") plot(showLines ? dayLow : na, color=color.red, style=plot.style_line, linewidth=1, title="Day Low") // Calculate buy and sell conditions buyCondition = crossover(close, dayHigh) sellCondition = crossunder(close, dayLow) // Plot buy and sell signals plotshape(buyCondition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal") plotshape(sellCondition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal") // Calculate Fibonacci levels for the day's high and low fib236High = dayLow + (0.236 * (dayHigh - dayLow)) fib786High = dayLow + (0.786 * (dayHigh - dayLow)) // Plot Fibonacci levels plot(showFibLevels ? fib236High : na, color=color.blue, style=plot.style_line, linewidth=1, title="Fib 0.236 Day High") plot(showFibLevels ? fib786High : na, color=color.purple, style=plot.style_line, linewidth=1, title="Fib 0.786 Day High") // Strategy strategy.entry("Buy", strategy.long, when=buyCondition) strategy.close("Buy", when=sellCondition)