The Chaikin Volatility's main purpose is to confirm price trends and to forecast price reversals.
Signature
1
publicabstractinterfaceChaikinVolatility
Namespace
cAlgo.API.Indicators
Examples
1 2 3 4 5 6 7 8 9101112
privateChaikinVolatilitychaikinVolatility;[Output("Main")]publicIndicatorDataSeriesResult{get;set;}protectedoverridevoidInitialize(){chaikinVolatility=Indicators.ChaikinVolatility(14,10,MovingAverageType.Simple);}publicoverridevoidCalculate(intindex){// Display Result of IndicatorResult[index]=_chaikinVolatility.Result[index];}
usingcAlgo.API;usingcAlgo.API.Indicators;namespacecAlgo.Robots{// This sample cBot shows how to use the Chaikin Volatility indicator[Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]publicclassChaikinVolatilitySample:Robot{privatedouble_volumeInUnits;privateChaikinVolatility_chaikinVolatility;privateSimpleMovingAverage_simpleMovingAverage;[Parameter("Volume (Lots)", DefaultValue = 0.01)]publicdoubleVolumeInLots{get;set;}[Parameter("Stop Loss (Pips)", DefaultValue = 10)]publicdoubleStopLossInPips{get;set;}[Parameter("Take Profit (Pips)", DefaultValue = 10)]publicdoubleTakeProfitInPips{get;set;}[Parameter("Label", DefaultValue = "Sample")]publicstringLabel{get;set;}publicPosition[]BotPositions{get{returnPositions.FindAll(Label);}}protectedoverridevoidOnStart(){_volumeInUnits=Symbol.QuantityToVolumeInUnits(VolumeInLots);_chaikinVolatility=Indicators.ChaikinVolatility(14,10,MovingAverageType.Simple);_simpleMovingAverage=Indicators.SimpleMovingAverage(Bars.ClosePrices,9);}protectedoverridevoidOnBar(){if(_chaikinVolatility.Result.Last(1)>0){if(Bars.ClosePrices.Last(1)>_simpleMovingAverage.Result.Last(1)&&Bars.ClosePrices.Last(2)<_simpleMovingAverage.Result.Last(2)){ExecuteMarketOrder(TradeType.Buy,SymbolName,_volumeInUnits,Label,StopLossInPips,TakeProfitInPips);}elseif(Bars.ClosePrices.Last(1)<_simpleMovingAverage.Result.Last(1)&&Bars.ClosePrices.Last(2)>_simpleMovingAverage.Result.Last(2)){ExecuteMarketOrder(TradeType.Sell,SymbolName,_volumeInUnits,Label,StopLossInPips,TakeProfitInPips);}}else{ClosePositions();}}privatevoidClosePositions(){foreach(varpositioninBotPositions){ClosePosition(position);}}}}
1 2 3 4 5 6 7 8 910
importclrclr.AddReference("cAlgo.API")fromcAlgo.APIimport*classTest():definitialize(self):self.chaikinVolatility=api.Indicators.ChaikinVolatility(14,10,MovingAverageType.Simple)defcalculate(self,index):# Result is an output defined in C# file of indicator# Display Result of Indicatorapi.Result[index]=self.chaikinVolatility.Result[index]
""" VolumeInLots, ChaikinPeriods, RateOfChange, MaTypeChaikin, SmaPeriods, MaType, StopLossInPips, TakeProfitInPips, and Label are parameters defined in C# file of cBot. """importclrclr.AddReference("cAlgo.API")# Import cAlgo API typesfromcAlgo.APIimport*# Import trading wrapper functionsfromrobot_wrapperimport*classChaikinVolatilitySample():defon_start(self):self.volumeInUnits=api.Symbol.QuantityToVolumeInUnits(api.VolumeInLots)self.chaikinVolatility=api.Indicators.ChaikinVolatility(api.ChaikinPeriods,api.RateOfChange,api.MaTypeChaikin)self.movingAverage=api.Indicators.MovingAverage(api.Bars.ClosePrices,api.SmaPeriods,api.MaType)defon_bar_closed(self):ifself.chaikinVolatility.Result.Last(0)>0:ifapi.Bars.ClosePrices.Last(0)>self.movingAverage.Result.Last(0)andapi.Bars.ClosePrices.Last(1)<self.movingAverage.Result.Last(1):api.ExecuteMarketOrder(TradeType.Buy,api.SymbolName,self.volumeInUnits,api.Label,api.StopLossInPips,api.TakeProfitInPips)elifapi.Bars.ClosePrices.Last(0)<self.movingAverage.Result.Last(0)andapi.Bars.ClosePrices.Last(1)>self.movingAverage.Result.Last(1):api.ExecuteMarketOrder(TradeType.Sell,api.SymbolName,self.volumeInUnits,api.Label,api.StopLossInPips,api.TakeProfitInPips)else:self.close_positions()defget_bot_positions(self):returnapi.Positions.FindAll(api.Label)defclose_positions(self):forpositioninself.get_bot_positions():api.ClosePosition(position)
Properties
Result
Summary
Chaikin Volatility Result Series.
Signature
1
publicabstractIndicatorDataSeriesResult{get;}
Return Value
IndicatorDataSeries
Examples
1 2 3 4 5 6 7 8 91011
privateChaikinVolatility_chaikinVolatility;protectedoverridevoidOnStart(){_chaikinVolatility=Indicators.ChaikinVolatility(Periods,_roc,MaType);}protectedoverridevoidOnBar(){// Print to logPrint("The Current Chaikin Volatility Value is: {0}",_chaikinVolatility.Result.LastValue);}
1 2 3 4 5 6 7 8 9101112
importclrclr.AddReference("cAlgo.API")# Import cAlgo API typesfromcAlgo.APIimport*# Import trading wrapper functionsfromrobot_wrapperimport*classTest():defon_start(self):# RateOfChange, Periods, and MaType are parameters defined in C# file of cBotself.chaikinVolatility=api.Indicators.ChaikinVolatility(api.Periods,api.RateOfChange,api.MaType)defon_bar(self):print(f"The Current Chaikin Volatility Value is: {self.chaikinVolatility.Result.LastValue}")