Transforming a TOS indicator for PRT

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #226572 quote
    celtinvest
    Participant
    Junior
    Hello,
    I would like to change this program in TOS language into a ProBuilder language.
    As you can see in the picture attached, the code is drawing support & resistance for several stocks.
    Thank you for your help.
    TOS code:

    def aggregationPeriod = AggregationPeriod.DAY;def LastPrice = close(priceType = PriceType.LAST);

    plot z1_a;plot z1_b;plot z2_a;plot z2_b;plot z3_a;plot z3_b;plot z4_a;plot z4_b;plot z5_a;plot z5_b;

    if (GetSymbol() == “AAPL”) {z1_a = 187.15;z1_b = 186.26;z2_a = 181.91;z2_b = 181.9101;z3_a = 182.115;z3_b = 181.12;z4_a = 184.855;z4_b = 185.525;z5_a = 192.505;z5_b = 192.52;} else if (GetSymbol() == “SPY”) {z1_a = 472.6;z1_b = 472.63;z2_a = 475.39;z2_b = 474.9;z3_a = 471;z3_b = 472.6;z4_a = 475.31;z4_b = 475.35;z5_a = 469.735;z5_b = 467.97;}else if (GetSymbol() == “TSLA”) {z1_a = 220.08;z1_b = 223.7469;z2_a = 230.57;z2_b = 229.47;z3_a = 244.98;z3_b = 240.6701;z4_a = 258.35;z4_b = 262.26;z5_a = 214.86;z5_b = 214.1915;}else if (GetSymbol() == “NVDA”) {z1_a = 495.12;z1_b = 508.7201;z2_a = 524.01;z2_b = 518.8;z3_a = 508.7624;z3_b = 510.72;z4_a = 536.16;z4_b = 536.0911;z5_a = 549.99;z5_b = 547.74;}else {z1_a = Double.NaN;z1_b = Double.NaN;z2_a = Double.NaN;z2_b = Double.NaN;z3_a = Double.NaN;z3_b = Double.NaN;z4_a = Double.NaN;z4_b = Double.NaN;z5_a = Double.NaN;z5_b = Double.NaN;};

    z1_a.SetDefaultColor(CreateColor(40,80,250));z1_b.SetDefaultColor(CreateColor(40,80,250));z2_a.SetDefaultColor(CreateColor(116,189,231));z2_b.SetDefaultColor(CreateColor(116,189,231));z3_a.SetDefaultColor(CreateColor(170,170,170));z3_b.SetDefaultColor(CreateColor(170,170,170));z4_a.SetDefaultColor(CreateColor(140,140,140));z4_b.SetDefaultColor(CreateColor(140,140,140));z5_a.SetDefaultColor(CreateColor(110,110,110));z5_b.SetDefaultColor(CreateColor(110,110,110));

    z1_a.SetLineWeight(5);z1_b.SetLineWeight(5);z2_a.SetLineWeight(4);z2_b.SetLineWeight(4);z3_a.SetLineWeight(3);z3_b.SetLineWeight(3);z4_a.SetLineWeight(2);z4_b.SetLineWeight(2);z5_a.SetLineWeight(1);z5_b.SetLineWeight(1);

    AddCloud(z1_a, z1_b, createColor(80,160,250), createColor(80,160,250), showBorder = yes);AddCloud(z2_a, z2_b, createColor(116,189,231), createColor(116,189,231), showBorder = yes);AddCloud(z3_a, z3_b, createColor(160,160,160), createColor(160,160,160), showBorder = yes);AddCloud(z4_a, z4_b, createColor(140,140,140), createColor(140,140,140), showBorder = yes);AddCloud(z5_a, z5_b, createColor(120,120,120), createColor(120,120,120), showBorder = yes);

    DPL.jpg DPL.jpg
    #232232 quote
    Iván González
    Moderator
    Master

    Hola. Sería algo así:

    Symbol = 1 //1="AAPL" / 2="SPY" / 3="TSLA" / 4="NVDA" / 
    IF Symbol =1 THEN
    z1a = 187.15
    z1b = 186.26
    z2a = 181.91
    z2b = 181.9101
    z3a = 182.115
    z3b = 181.12
    z4a = 184.855
    z4b = 185.525
    z5a = 192.505
    z5b = 192.52
    ELSIF Symbol =2 THEN
    z1a = 472.6
    z1b = 472.63
    z2a = 475.39
    z2b = 474.9
    z3a = 471
    z3b = 472.6
    z4a = 475.31
    z4b = 475.35
    z5a = 469.735
    z5b = 467.97
    ELSIF Symbol =3 THEN
    z1a = 220.08
    z1b = 223.7469
    z2a = 230.57
    z2b = 229.47
    z3a = 244.98
    z3b = 240.6701
    z4a = 258.35
    z4b = 262.26
    z5a = 214.86
    z5b = 214.1915
    ELSIF Symbol =4 THEN
    z1a = 495.12
    z1b = 508.7201
    z2a = 524.01
    z2b = 518.8
    z3a = 508.7624
    z3b = 510.72
    z4a = 536.16
    z4b = 536.0911
    z5a = 549.99
    z5b = 547.74
    ELSE
    z1a = Undefined
    z1b = Undefined
    z2a = Undefined
    z2b = Undefined
    z3a = Undefined
    z3b = Undefined
    z4a = Undefined
    z4b = Undefined
    z5a = Undefined
    z5b = Undefined
    ENDIF
    
    RETURN z1a COLOURED(40, 80, 250) AS "z1a", z1b COLOURED(40, 80, 250) AS "z1b", z2a COLOURED(116, 189, 231) AS "z2a", z2b COLOURED(116, 189, 231) AS "z2b", z3a COLOURED(170, 170, 170) AS "z3a", z3b COLOURED(170, 170, 170) AS "z3b", z4a COLOURED(140, 140, 140) AS "z4a", z4b COLOURED(140, 140, 140) AS "z4b", z5a COLOURED(110, 110, 110) AS "z5a", z5b COLOURED(110, 110, 110) AS "z5b"
    

    Ten en cuenta que el ticker lo tendrás que seleccionar tú manualmente.

Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.

Transforming a TOS indicator for PRT


ProBuilder: Indicators & Custom Tools

New Reply
Author
author-avatar
celtinvest @celtinvest Participant
Summary

This topic contains 1 reply,
has 2 voices, and was last updated by Iván González
1 year, 10 months ago.

Topic Details
Forum: ProBuilder: Indicators & Custom Tools
Language: English
Started: 01/19/2024
Status: Active
Attachments: 1 files
Logo Logo
Loading...