[R-SIG-Finance] Signal and Rule question in Quantstrat

Mark Knecht markknecht at gmail.com
Sun Feb 1 15:20:13 CET 2015


On Sun, Feb 1, 2015 at 5:48 AM, Joshua Ulrich <josh.m.ulrich at gmail.com> wrote:
> On Fri, Jan 23, 2015 at 8:49 AM, Isak Engdahl <isak.engdahl at gmail.com> wrote:
>> Dear members,
>>
>> I have a questions how to set up the signals and rules correct for this
>> stategy in Quantstrat.
>>
>> Price must be above SMA=250 and below the 20 line in the Slow Stochastic
>> indicator.
>>
>> The trigger for a buy signal is when the signal line of the stochastic
>> indicator close above the 20 line.
>>
>> Enter trade
>> PRICE > SMA=250
>> Slow Stochastic < 20 and crossing above the 20 line
>>
>> Exit trade
>> PRICE < SMA=250
>> Slow Stoch > 80 and closes below the 80 line
>>
>> The rules and examples can be found here:
>> http://stockcharts.com/public/1107832
>>
>> Here is the code I have come up with now. Please help!
>>
> Help with what?  You haven't stated any problem.
>

Joshua,
   I think Isak provided code and asked if it works, or what he has to
do to make it work. It didn't seem a wholly unreasonable question. (to
me...)
Mark


>> //Isak
>>
>> #parameters
>> nFastK <- 5
>> nSlowD <- 1
>> nSMA <- 250
>> buyThresh <- 20
>> sellThresh <- 80
>>
>> ######################################################################################
>> #indicator
>> add.indicator(strategy.st, name="stoch",
>>               arguments=list(HLC=quote(HLC(mktdata)), nFastK=nFastK,
>> nSlowD=nSlowD),
>>               label="stoch")
>>
>> add.indicator(strategy.st, name="SMA",
>>               arguments=list(x=quote(Cl(mktdata)), n=nSMA),
>>               label="sma")
>> ###############################################################################
>> #signals
>> add.signal(strategy.st, name="sigComparison",
>>            arguments=list(columns=c("Close", "sma"), relationship="gt"),
>>            label="filter")
>>
>> add.signal(strategy.st, name="sigThreshold",
>>            arguments=list(column="stoch", threshold=buyThresh,
>>                           relationship="lt", cross=FALSE),
>>            label="stochLtThresh")
>>
>> add.signal(strategy.st, name="sigAND",
>>            arguments=list(columns=c("filter", "stochLtThresh"), cross=TRUE),
>>            label="longEntry")
>> add.signal(strategy.st, name="sigThreshold",
>>            arguments=list(column="stoch", threshold=sellThresh,
>>                           relationship="gt", cross=TRUE),
>>            label="longExit")
>> ###############################################################################
>> #rules
>>
>> #Long entry rule
>> add.rule(strategy.st, name="ruleSignal",
>>          arguments=list(sigcol="longEntry",
>>                         sigval=TRUE,
>>                         replace=FALSE,
>>                         orderside="long",
>>                         ordertype="market",
>>                         orderqty=100,
>>                         osFUN="osFixedDollar",
>>                         orderset="ocolong"),
>>          type="enter",label="LE")
>>
>> #Long exit rule
>> add.rule(strategy.st, name="ruleSignal",
>>          arguments=list(sigcol="longExit",
>>                         sigval=TRUE,
>>                         replace=FALSE,
>>                         orderside="long",
>>                         ordertype="market",
>>                         orderqty="all",
>>                         orderset="ocolong"),
>>          type="exit",label="LX")
>>
>>         [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> R-SIG-Finance at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>> -- Subscriber-posting only. If you want to post, subscribe first.
>> -- Also note that this is not the r-help list where general R questions should go.
>
>
>
> --
> Joshua Ulrich  |  about.me/joshuaulrich
> FOSS Trading  |  www.fosstrading.com
>
> _______________________________________________
> R-SIG-Finance at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only. If you want to post, subscribe first.
> -- Also note that this is not the r-help list where general R questions should go.



More information about the R-SIG-Finance mailing list