NexusFi: Find Your Edge


Home Menu

 





Thinkscript to EasyLanguage


Discussion in TradeStation

Updated
      Top Posters
    1. looks_one StockT8er with 13 posts (0 thanks)
    2. looks_two mntman with 7 posts (5 thanks)
    3. looks_3 markmanu with 4 posts (1 thanks)
    4. looks_4 kjhosken with 3 posts (0 thanks)
      Best Posters
    1. looks_one Skidboot with 1 thanks per post
    2. looks_two mntman with 0.7 thanks per post
    3. looks_3 madeinnyc with 0.5 thanks per post
    4. looks_4 markmanu with 0.3 thanks per post
    1. trending_up 11,871 views
    2. thumb_up 8 thanks given
    3. group 10 followers
    1. forum 33 posts
    2. attach_file 4 attachments




 
Search this Thread

Thinkscript to EasyLanguage

  #11 (permalink)
 
mntman's Avatar
 mntman 
Houston+TX/USA
 
Experience: Intermediate
Platform: TradeStation, ThinkorSwim
Trading: ES, CL
Posts: 11 since Jan 2019
Thanks Given: 1
Thanks Received: 5


kjhosken View Post
At least on TOS, this indicator will give false signals.

yeah i just started watching it this week and have seen a few already, but i would like to test it anyways in tradestation using the yellow line as a stop to try minimize losses.


Reply With Quote

Can you help answer these questions
from other members on NexusFi?
Better Renko Gaps
The Elite Circle
NexusFi Journal Challenge - May 2024
Feedback and Announcements
ZombieSqueeze
Platforms and Indicators
Trade idea based off three indicators.
Traders Hideout
REcommedations for programming help
Sierra Chart
 
  #12 (permalink)
 kjhosken 
Seattle, WA/USA
 
Experience: Intermediate
Platform: TOS, TS
Trading: Forex, crude
Posts: 96 since Sep 2016
Thanks Given: 7
Thanks Received: 35

Not a bad idea. If you could attach the logic for that stop to something that gives valid or only confirmed signals it might look really good

Follow me on Twitter Reply With Quote
  #13 (permalink)
 
mntman's Avatar
 mntman 
Houston+TX/USA
 
Experience: Intermediate
Platform: TradeStation, ThinkorSwim
Trading: ES, CL
Posts: 11 since Jan 2019
Thanks Given: 1
Thanks Received: 5



kjhosken View Post
Not a bad idea. If you could attach the logic for that stop to something that gives valid or only confirmed signals it might look really good

yep i agree. at the moment im thinking of using ATR as possible confirmation before entry.

Reply With Quote
  #14 (permalink)
 StockT8er 
ROY, Utah
 
Experience: Intermediate
Platform: TradeStation
Posts: 81 since Apr 2020
Thanks Given: 11
Thanks Received: 6

How do I convert this in EasyLanguage

#CCI_CLOUDS
declare lower;
input cciLength2 = 5;
input cciAvgLength2 = 3;

input over_Sold = 20;
input over_Bought = 80;

plot OverBought = over_Bought;
OverBought.SetStyle(Curve.LONG_DASH);
plot OverSold = over_Sold;
OverSold.SetStyle(Curve.LONG_DASH);
#--------------------------------------------

plot CCI2 = .5 * CCI(length = cciLength2) + 50;
plot CCIAvg2 = Average(CCI2, cciAvgLength2);
plot CCI3 = ExpAverage(CCI2);
CCI2.SetStyle(Curve.SHORT_DASH);
CCI2.SetDefaultColor(GetColor(6));
CCIAvg2.SetDefaultColor(Color.RED);
CCI3.setDefaultColor(color.yellow);

AddCloud(CCI2, CCIAvg2, Color.GREEN, Color.RED);
AddCloud(CCI2, CCIAvg2, Color.GREEN, Color.RED);
AddCloud(CCIAvg2, CCI3, Color.GREEN, Color.RED);

Reply With Quote
  #15 (permalink)
 
numberjuani's Avatar
 numberjuani 
Agoura Hills, CA USA
 
Experience: Advanced
Platform: Tradestation&Multicharts
Broker: TradeStation
Trading: Futures & Equities
Posts: 128 since Apr 2019
Thanks Given: 9
Thanks Received: 102

Tell us what the code is doing, and post 3 screenshots. unless somebody knows both languages its unlikely somebody will be able to help. but if you tell us what its doing and how it looks, somebody could help out


markmanu View Post
I'm a trainer and it's a bit complicated for me to convert this thinkscript code to easy language.
Can anyone please help me? Many thanks



declare upper;

input avglength = 14;
input MTaverageType = AverageType.WILDERS;
input ATRLength = 5;
input MTprice = hlc3;
input MTreversalMode = {default ATRpercent, price};
input MTreversalAmount = .5;

##DayATR Value Calculation
def highPrice = FundamentalType.high;
def closePrice = FundamentalType.close;
def lowPrice = FundamentalType.low;
def aggregationPeriod = AggregationPeriod.DAY;
rec AvgTrueRange = MovingAverage(AverageType.SIMPLE, TrueRange(Fundamental (highPrice, period = AggregationPeriod.Day), Fundamental (closePrice, period = AggregationPeriod.DAY), Fundamental (lowPrice, period = AggregationPeriod.DAY) ),ATRlength);

##############
##ATR percent conversion calculation
rec DayATRReversalValue = MTreversalAmount*(AvgTrueRange/close)*100;

def mode = if MTreversalMode == MTreversalMode.price then ZigZagTrendSign(price = MTprice, reversalAmount=MTreversalAmount) else ZigZagTrendPercent(price = MTprice, reversalAmount=DayATRReversalValue);
def MTinflection = if MTreversalMode == MTreversalMode.price then if !isNan(ZigZagSign(price = MTprice, reversalAmount=MTreversalAmount)) then 1 else 0 else if !isNan(ZigZagPercent(price = MTprice, reversalAmount=DayATRReversalValue)) then 1 else 0;
rec MTtrend = if MTinflection==1 and mode ==-1 then 1 else if MTinflection==1 and mode==1 then -1 else MTtrend[1];

rec MTupWaveVolume = if MTinflection==1 and MTtrend==1 and close>open then volume else if MTinflection==1 and MTtrend==1 and close <= open then 0 else if MTtrend==1 or (MTinflection==1 and MTtrend ==-1 and close>=open) then MTupWaveVolume[1]+volume else 0;
rec MTdownWaveVolume = if MTinflection==1 and MTtrend ==-1 and close<open then volume else if MTinflection==1 and MTtrend ==-1 and close>=open then 0 else if MTtrend==-1 or (MTinflection==1 and MTtrend==1 and close <= open) then MTdownWaveVolume[1]+volume else 0;



plot BuySignal = MTinflection[1] and MTdownwavevolume[2] > 0;
BuySignal.SetDefaultColor(Color.Cyan);
BuySignal.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);
BuySignal.SetLineWeight(4);

plot SellSignal = MTinflection[1] and MTupwavevolume[2] > 0;
SellSignal.SetDefaultColor(Color.Magenta);
SellSignal.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);
SellSignal.SetLineWeight(4);

####################
##volume label add-on

##input MTVolumeAudible_Alert = yes;
def MTVolumeDeviation_Length = 60;
def MTVolumeDeviate = 2;
def MTvolumestdevlength = RelativeVolumeStDev(length = MTvolumeDeviation_Length);
def abovedev = MTvolumestdevlength >= MTvolumeDeviate;
def belowdev = MTvolumestdevlength <= MTvolumeDeviate;


def MTvolumeincrease = volume > volume[1];
def MTvolumedevincrease = MTvolumeincrease and abovedev;
def MTvolumedecrease = volume < volume[1];
def MTvolumedevdecrease = MTvolumedecrease and abovedev;

def O = open;
def H = high;
def C = close;
def L = low;
def V = volume;
def MTvolumeBuying = V * (C - L) / (H - L);
def MTvolumeSelling = V * (H - C) / (H - L);


input Show_Labels = yes;
AddLabel(Show_Labels, "Buy Vol = " + Round(MTvolumeBuying, 0), if MTvolumeBuying > MTvolumeSelling then color.green else color.red);
AddLabel(Show_Labels, "Sell Vol = " + Round(MTvolumeSelling, 0), if MTvolumeSelling > MTvolumeBuying then color.green else color.red);


Reply With Quote
  #16 (permalink)
 
mntman's Avatar
 mntman 
Houston+TX/USA
 
Experience: Intermediate
Platform: TradeStation, ThinkorSwim
Trading: ES, CL
Posts: 11 since Jan 2019
Thanks Given: 1
Thanks Received: 5


StockT8er View Post
How do I convert this in EasyLanguage

#CCI_CLOUDS

see below... sorry dont know how to do the clouds portion, only the indicator.

 
Code
inputs:
	cciLength2(5),
	cciAvgLength2(3),
	over_sold(80),
	over_bought(20);
	
vars:
	cci2(0),
	cciAvg2(0),
	cci3(0);

cci2 = 0.5 * CCI(cciLength2) + 50;
cciAvg2 = Average(cci2, cciAvgLength2);
cci3 = Xaverage(cci2, 12);

plot1(cci2, "cci2");
plot2(cciAvg2, "cciAvg2");
plot3(cci3, "cci3");
plot4(over_bought, "overbought");
plot5(over_sold, "oversold");

Reply With Quote
Thanked by:
  #17 (permalink)
 StockT8er 
ROY, Utah
 
Experience: Intermediate
Platform: TradeStation
Posts: 81 since Apr 2020
Thanks Given: 11
Thanks Received: 6

Thanks don't need cloud

The Swing Trade script works great, just don't get the bottom bar portion, not in your script

Reply With Quote
  #18 (permalink)
 StockT8er 
ROY, Utah
 
Experience: Intermediate
Platform: TradeStation
Posts: 81 since Apr 2020
Thanks Given: 11
Thanks Received: 6

This would be Fantastic if you could get it to work during available trading hours
I include a script to add trading hrs, just not sure how to incorporate it into your script

input usetimefilter = yes;

#positioning
input rthopen = 0930;
input rthclose = 1600;
def RTH = if usetimefilter == yes then if SecondsFromTime(rthopen) >= 0 and
SecondstillTime(rthclose) >= 0
then 1
else 0 else 1;

Also would be nice if when it's getting close to triggering was to send an Alert

THIS IS A MONEY MAKER

Reply With Quote
  #19 (permalink)
 StockT8er 
ROY, Utah
 
Experience: Intermediate
Platform: TradeStation
Posts: 81 since Apr 2020
Thanks Given: 11
Thanks Received: 6

In running your Study, it seams to have a sight flaw. The Buy Point and the Sell Point keep changing
In Order to use this as a strategy you need to have it readjust after an accrual BUY or SELL

Reply With Quote
  #20 (permalink)
 StockT8er 
ROY, Utah
 
Experience: Intermediate
Platform: TradeStation
Posts: 81 since Apr 2020
Thanks Given: 11
Thanks Received: 6


Do you know how to fix this

def colorB = if isLastBar = (Color.GREEN) and color.CURRENT = (Color.DARK_GREEN) then 1 else 0;
def colorS = if isLastBar = (Color.RED) and color.CURRENT = (Color.DARK_RED) then 1 else 0;

Reply With Quote




Last Updated on September 27, 2020


© 2024 NexusFi™, s.a., All Rights Reserved.
Av Ricardo J. Alfaro, Century Tower, Panama City, Panama, Ph: +507 833-9432 (Panama and Intl), +1 888-312-3001 (USA and Canada)
All information is for educational use only and is not investment advice. There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
About Us - Contact Us - Site Rules, Acceptable Use, and Terms and Conditions - Privacy Policy - Downloads - Top
no new posts