Trendlijnen programmeren

Vragen en suggesties over Vesticode

Moderator: Perry

Trendlijnen programmeren

Berichtdoor Wilco » di 04 feb 2003, 17:11

Wie kan mij vertellen hoe ik een trendlijn in een handelssysteem kan programmeren.
Als ik TL_New(parameters) gebruik verschijnt er niets. Bovendien zou ik als parameters geen vaste waarden willen invullen, maar bijv. de laatste 2 toppen in de grafiek.
Wilco
 
Berichten: 35
Geregistreerd op: vr 29 nov 2002, 17:33

Trendlijnen programmeren

Berichtdoor artisan » zo 09 feb 2003, 11:04

Dat is voor mij ook een vraag die ik graag beantwoord zou willen zien. Zelf heb ik met onderstaande code in de daggrafiek van ASMI iets van een trendlijn proberen te tekenen, maar zoals Wilco al zegt, zonder succes.

value function ztrendlijn (value ?xFromDate=1020428,value xFromPrice=28,
value xToDate=1030206,value xToPrice=12) begin
?TL_New (xFromdate,0,xFromPrice,xToDate,0,xToPrice);
?end;
artisan
 
Berichten: 12
Geregistreerd op: zo 11 aug 2002, 14:05

Trendlijnen programmeren

Berichtdoor artisan » ma 10 feb 2003, 18:52

Ik heb het voor elkaar Wilco !! Allereerst heb ik de volgende functie "xTrendlijn" gedefinieerd:

value function xTrendlijn (value xFromPrice,value xFromTime,value xFromdate,
value xToPrice,value xTodate,value xToTime,value xExtLeft,value xExtRight,value xAlert=0)
begin
value xValue;
xValue := Builtin(114,Date,Time,xFromDate,xFromTime,xFromPrice
? ,xToDate,xToTime,xToPrice,xExtLeft,xExtRight);
Plot1 (xValue,"TrendLine");

end;

Vervolgens kun je met behulp van onderstaande indicator "zTrendLijn" ?de trendlijn in de grafiek plaatsen:

value function ztrendlijn (value xFromDate=1020426,value xFromPrice=28,value xToDate=1030206,value xToPrice=12) begin
?xTrendlijn (xFromPrice,0,xFromdate,xToPrice,xToDate,0,0,0);
?end;

Het hierboven behandelde voorbeeld slaat op ASMI, waarbij vanaf 28 euro op 26 april vorig jaar een lijn getrokken wordt naar 12 euro op 6 februari dit jaar. Je kan natuurlijk ook variabelen hiervoor uitkiezen door bijvoorbeel de hoogste koers van de afgelopen twee maanden te selecteren. Je moet dan natuurlijk ook de bijbehorende datum in een variabele vastleggen. ?(Met dank aan DO ( zie verticale trendlijn (2) verderop in dit forum.)
artisan
 
Berichten: 12
Geregistreerd op: zo 11 aug 2002, 14:05

Trendlijnen programmeren

Berichtdoor Wilco » di 11 feb 2003, 10:32

Artisan, helaas kreeg ik je oplossing niet aan de praat: er verscheen niets in beeld. Daarom je zTrendLijn maar wat aangepast:

value function z TrendLijn (value xFromDate=1020426,value xFromPrice=28,value xToDate=1030206,value xToPrice=12) begin;
value xValue;
xTrendlijn (xFromPrice,0,xFromdate,xToPrice,xToDate,0,0,0);

Plot1 (xValue,"TrendLine");
end;

Echter ook dit was het niet echt: wel beeld maar een subgrafiek met een horizontale rechte lijn op 0.00

Vervolgens van je functie xTrendLijn maar een indicator gemaakt en deze ingevoegd in de grafiek en dat werkte wel. ?Dus in zoverre wel een gedeelte van m?n probleem beantwoord (hoewel ik dus niet direct de bedoeling van zTrendLijn zie).

Echter mijn kernprobleem is het volgende:
ik zoek een oplossing voor een automatische plot van een trendlijn in de grafiek: een indicator die iedere dag automatisch een trendlijn over bijv. de toppen van de grafiek (de top en de op ??n na hoogste top van de afgelopen dagen) trekt en zomogelijk ook niet meer actuele trendlijnen ?verwijderd.
Daarmee zou namelijk een koersdoel op basis van trendlijnen cq. een trendkanaal in een handelssysteem ingebouwd kunnen worden.
Wilco
 
Berichten: 35
Geregistreerd op: vr 29 nov 2002, 17:33

Trendlijnen programmeren

Berichtdoor artisan » di 11 feb 2003, 18:06

Wilco, bij mij werkt het uitstekend. Ik vermoed dat je de eerste code (onder xTrendLijn) niet als functie hebt opgeslagen , maar als indicator. ?Je kan dit kontroleren door met F11 naar de designer te gaan en dan via tabblad Editor, Module openen onder het tabblad Function te kijken of daar inderdaad een functie onder de naam xTrendlijn gedefinieerd staat.
De tweede code (onder zTrendLijn) moet je opslaan als indicator. Je ziet dat in deze laatste code de functie xTrendLijn aangeroepen wordt.
Dit verklaart ook dat je in je zelfgemaakte code een rechte lijn op het scherm krijgt, omdat de waarde xValue blijkbaar steeds de waarde nul houdt.

Succes!!
artisan
 
Berichten: 12
Geregistreerd op: zo 11 aug 2002, 14:05

Trendlijnen programmeren

Berichtdoor artisan » di 11 feb 2003, 19:21

Nog even ter aanvulling: De functie xTrendlijn is specifiek als functie opgeslagen zodat je hem later in elke willekeurige indicator (hier zTrendlijn) kunt gebruiken. Dat beantwoord je vraag wellicht waarom ik xTrendlijn niet als indicator gebruik.
Je kunt nu in een nieuw te maken indicator de koerstoppen berekenen. Door die op te slaan in bijv de variabelen xMax1 en xMax2 en deze variabelen te gebruiken bij het aanroepen van de functie xTrendlijn kun je de door jou gevraagde trendlijnen voor elke willekeurige grafiek maken .
artisan
 
Berichten: 12
Geregistreerd op: zo 11 aug 2002, 14:05

Trendlijnen programmeren

Berichtdoor Wilco » wo 12 feb 2003, 15:50

Artisan, ondanks alle goede bedoelingen: ook als ik alles letterlijk doe wat je aangeeft, ik krijg niets in beeld. De duvel zal er wel mee spelen, oftewel zal wel aan mij liggen, maar al met al ben ik dus geen stap verder.
Wilco
 
Berichten: 35
Geregistreerd op: vr 29 nov 2002, 17:33

Trendlijnen programmeren

Berichtdoor Wilco » vr 14 feb 2003, 20:11

Ik heb uit de manual Stad 5 blz. 28 e.v. ?op http://groups.yahoo.com/group/vestics/ ? de onderstaande code gekopieerd en ingevoerd in Vestics. Ik krijg daarmee exact de gevraagde automatische trendlijnen!

Echter nu heb ik weer het probleem dat het wel wat teveel van het goede wordt: meer dan ?tig trendlijnen!

Hoe kan ik deze code zodanig aanpassen, dat ik bijv. alleen de laatste 3 trendlijnen krijg? ?Als dat lukt hebben we er weer een mooie indicator bij in Vestics.


Inputs: RHStren(4), RLStren(4), Trailbar(6);

Vars: ? RHTLRef(-1), RHTLRef2(-1),RHSet(-1), RHSet2(-1),RHArrayVal(0);

Array: RHDate[10](0), RHTime[10](0), RHVal[10](0), RLDate[10](99999),
? ? ?RLTime[10](99999), RLVal[10](99999);

{Find new Swing High bars and draw corresponding trend lines }
If SwingHighBar(1, High, RHStren, RHStren+1)=RHStren then Begin
For Value1 =9 downto 0 Begin
RHDate[Value1+1]=RHDate[Value1];
RHTime[Value1+1]=RHTime[Value1];
RHVal[Value1+1]=RHVal[Value1];
End;
RHDate[0]=Date[RHStren];
RHTime[0]=Time[RHStren];
RHVal[0]=High[RHStren];
For Value22=1 to 10 Begin
if RHVal[Value22]>RHVal[0] then Begin
RHArrayVal=Value22;
Value22=11;
End;
End;
if Value22<>11 then Begin
if RHSet>=0 then Begin
RHSet2=TL_SetExtRight(RHTLRef, False);
TL_Delete(RHTLRef);
End;
RHTLRef=TL_New(RHDate[RHArrayVal],RHTime[RHArrayVal],RHVal[RHArrayVal], RHDate[0], RHTime[0], RHVal[0]);
RHSet=TL_SetExtRight(RHTLRef, True);
End;
End;
Wilco
 
Berichten: 35
Geregistreerd op: vr 29 nov 2002, 17:33


Keer terug naar Vesticode

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 14 gasten

cron