Ho inserito le righe nel codice che allego e mi dice di definire la variabile “miestrategielong”. Come indicare i segnali?
// Big Three Trading Strategy
// Original Idea from: http://www.tradingstrategyguides.com/big-three-trading-strategy/
// Market: DAX 30
// Time Frame: 1 Hour
// Time Zone: Any
// Spread: 2.9
// Version : 2.8
// Revised on 2017-11-14
Defparam preloadbars = 3000
Defparam cumulateorders =false //true //false
OrarioNonValido = (Time >= 050000 AND Time <= 050000) OR (Time >= 120000 AND Time <= 120000) OR (Time >= 150000 AND Time <= 150000) OR (Time >= 230000 AND Time <=230000) //NON operare tra le 10 e le 12, né tra le 15 e le 17
IF NOT OrarioNonValido AND MieCondizioniLong THEN
BUY 1 Contract at Market
ENDIF
//// Optional Function Switch ( 1 = Enable 0 = Disable ) ////
FixedMinMaxStopLoss = 1 // Optional Function 1
TargetProfit = 1 // Optional Function 2
TimeExit = 1 // Optional Function 3
MFETrailing = 1 // Optional Function 4
MoneyManagement = 0 // Optional Function 5
//// Core Indicator Parameter Setting ////
// Moving Average Setting (Original: 20, 40, 80)
Fast = fast// Not Optimize
Medium = medium// Not Optimize
Slow = slow // Not Optimize
// Look Back Bar (Original: N/A)
CP = 3 // Variables Optimized
//// Optional Function ////
// 1) Fixed Min Max Stop Loss Setting
If FixedMinMaxStopLoss then
//Long
MaxLong = mal // by points, Variables Optimized
MinLong = mil// by points, Variables Optimized
//Short
MaxShort = mas // by points, Variables Optimized
MinShort = mis // by points, Variables Optimized
Endif
// 2) Take Profit Setting
If TargetProfit then
//Long
TakeProfitLongRate = tpl// by %, Variables Optimized
//Short
TakeProfitShortRate = tps // by %, Variables Optimized
Endif
// 3) Time Exit Setting
If TimeExit then
//Long
ONCE maxCandlesLongWithProfit = 78 // by bar, Variables Optimized
ONCE maxCandlesLongWithoutProfit = 66 // by bar, Variables Optimized
//Short
ONCE maxCandlesShortWithProfit = 60 // by bar, Variables Optimized
ONCE maxCandlesShortWithoutProfit = 54 // by bar, Variables Optimized
Endif
// 4) MFE Step Setting
If MFETrailing then
//Long
MFELongStep = mefl // by %, Variables Optimized
//Short
MFEShortStep = mefs // by %, Variables Optimized
Endif
// 5) Money Management
If MoneyManagement then
LongRisk = 5// by %, Variables Optimized
ShortRisk = 3 // by %, Variables Optimized
CloseBalanceMaxDrop = 80 // by %, Personal preference
Capital = 3000 // by $
Equity = Capital + StrategyProfit
LongMaxRisk = Round(Equity*LongRisk/100)
ShortMaxRisk = Round(Equity*ShortRisk/100)
//Max Contract
MaxLongContract = 500 // by contract, Variables Optimized
MaxShortContract = 100 // by contract, Variables Optimized
//Check system account balance
If equity<QuitLevel then
Quit
Endif
RecordHighest = MAX(RecordHighest,Equity)
QuitLevel = RecordHighest*((100-CloseBalanceMaxDrop)/100)
Endif
// Core indicator
//Big Three MA
FMA = Average[Fast](close) //green coloured(0,255,0)
MMA = Average[Medium](close) //blue coloured(0,0,255)
SMA = Average[Slow](close) //red coloured(255,0,0)
// Entry Rules
//Buy Signal
B1 = low > SMA and low>MMA and low>FMA
B2 = high >= highest[CP](high)
BC = B1 and B2
//Buy Candle
BC1 = Close[1] < Close[2]
BC2 = Close > Close[1]
BC3 = Close > Open
BCandle = BC1 and BC2 and BC3
//Sell Signal
S1 = high < FMA and high<MMA and high<SMA
S2 = low <= lowest[CP](low)
SC = S1 and S2
//Sell Candle
SC1 = Close[1] > Close[2]
SC2 = Close < Close[1]
SC3 = Close < Open
SCandle = SC1 and SC2 and SC3
// Exit Rules
LongExit = Close crosses under SMA
ShortExit = Close crosses over SMA
//Long Entry
If Not LongonMarket and BC and BCandle then
BuyPrice = Close
If FixedMinMaxStopLoss then
StopLossLong = MIN(MaxLong,MAX(MinLong,(BuyPrice – SMA)))
Else
StopLossLong = BuyPrice – SMA
Endif
If TargetProfit then
TakeProfitLong = StopLossLong * TakeProfitLongRate
TP = TakeProfitLong
Endif
SL = StopLossLong
If MoneyManagement then
PositionSizeLong = min(MaxLongContract,(max(2,abs(round((LongMaxRisk/StopLossLong)/PointValue)*pipsize))))
BUY PositionSizeLong CONTRACT AT MARKET
Else
BUY 1 CONTRACT AT MARKET
Endif
Endif
//Long Exit
If LongonMarket and LongExit then
sell at market
Endif
//short entry
If Not ShortonMarket and SC and SCandle then
SellPrice = Close
If FixedMinMaxStopLoss then
StopLossShort = MIN(MaxShort,MAX(MinShort,(SMA – SellPrice)))
Else
StopLossShort = SMA – SellPrice
Endif
If TargetProfit then
TakeProfitShort = StopLossShort * TakeProfitShortRate
TP = TakeProfitShort
Endif
SL = StopLossShort
If MoneyManagement then
PositionSizeShort = min(MaxShortContract,(max(2,abs(round((ShortMaxRisk/StopLossShort)/PointValue)*pipsize))))
SELLSHORT PositionSizeShort CONTRACT AT MARKET
Else
SELLSHORT 1 CONTRACT AT MARKET
Endif
Endif
//Short Exit
If ShortonMarket and ShortExit then
exitshort at market
Endif
// Time Exit
If TimeExit then
If LongonMarket then
posProfit = (((close – positionprice) * pointvalue) * countofposition) / pipsize
elsif ShortonMarket then
posProfit = (((positionprice – close) * pointvalue) * countofposition) / pipsize
Endif
m1 = posProfit > 0 AND (BarIndex – TradeIndex) >= maxCandlesLongWithProfit
m2 = posProfit > 0 AND (BarIndex – TradeIndex) >= maxCandlesShortWithProfit
m3 = posProfit < 0 AND (BarIndex – TradeIndex) >= maxCandlesLongWithoutProfit
m4 = posProfit < 0 AND (BarIndex – TradeIndex) >= maxCandlesShortWithoutProfit
// take profit after max candles
IF LONGONMARKET AND (m1 OR m3) THEN
sell at market
endif
IF SHORTONMARKET AND (m2 OR m4) THEN
exitshort at market
endif
Endif
//MFE Trailing stop
If MFETrailing then
MFELong = (TakeProfitLong/MFELongStep)
MFEShort = (TakeProfitShort/MFEShortStep)
If not onmarket then
MAXPRICE = 0
MINPRICE = close
priceexit = 0
Endif
If longonmarket then
MAXPRICE = MAX(MAXPRICE,close)
If MAXPRICE-tradeprice(1)>=MFELong*pointsize then
priceexit = MAXPRICE-MFELong*pointsize
Endif
Endif
If shortonmarket then
MINPRICE = MIN(MINPRICE,close)
If tradeprice(1)-MINPRICE>=MFEShort*pointsize then
priceexit = MINPRICE+MFEShort*pointsize
Endif
Endif
If onmarket and priceexit>0 then
EXITSHORT AT priceexit STOP
SELL AT priceexit STOP
Endif
Endif
// Stop Loss a
SET STOP LOSS SL
// Target Profit
If TargetProfit then
SET TARGET PROFIT TP
Endif