<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Calculating average return price of a stock in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227054#M40881</link>
    <description>&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ACCOUNT_NO&lt;/TD&gt;&lt;TD&gt;STOCK_CODE&lt;/TD&gt;&lt;TD&gt;ORDER_REF&lt;/TD&gt;&lt;TD&gt;TRADE_DATE&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;TD&gt;QTY&lt;/TD&gt;&lt;TD&gt;PRICE&lt;/TD&gt;&lt;TD&gt;required_price&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;7622&lt;/TD&gt;&lt;TD&gt;13May2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7137.65&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;14474&lt;/TD&gt;&lt;TD&gt;22May2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7350.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;18359&lt;/TD&gt;&lt;TD&gt;29May2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-50&lt;/TD&gt;&lt;TD&gt;7234.3&lt;/TD&gt;&lt;TD&gt;(50*7137.65+50*7350.75)/(50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;18026&lt;/TD&gt;&lt;TD&gt;05Jun2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7479.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;464&lt;/TD&gt;&lt;TD&gt;06Jun2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7528.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;20830&lt;/TD&gt;&lt;TD&gt;18Jun2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-100&lt;/TD&gt;&lt;TD&gt;7554.475&lt;/TD&gt;&lt;TD&gt;(50*7479.75+50*7528.75)/(50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;12253&lt;/TD&gt;&lt;TD&gt;19Jun2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-50&lt;/TD&gt;&lt;TD&gt;7530.1&lt;/TD&gt;&lt;TD&gt;(50*7479.75+50*7528.75+50*7137.65+50*7350.75)/(50+50=50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;16690&lt;/TD&gt;&lt;TD&gt;22Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;7768.4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;7164&lt;/TD&gt;&lt;TD&gt;23Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;7800&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;16070&lt;/TD&gt;&lt;TD&gt;24Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7834.1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;11726&lt;/TD&gt;&lt;TD&gt;30Jul2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-250&lt;/TD&gt;&lt;TD&gt;7722.9&lt;/TD&gt;&lt;TD&gt;(100*7768.4+100*7800+50*7834.1)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
    <pubDate>Thu, 24 Sep 2015 12:00:19 GMT</pubDate>
    <dc:creator>Sandeep_Gupta</dc:creator>
    <dc:date>2015-09-24T12:00:19Z</dc:date>
    <item>
      <title>Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227050#M40879</link>
      <description>Hi Everyone, I am having trouble calculating weighted average return from the stock. I want required_price to be returned wherever FLAG is 'COVER' as shown below: ACCOUNT_NO STOCK_CODE ORDER_REF TRADE_DATE FLAG QTY PRICE required_price 101 NIFTY 7622 13May2014 FRESH 50 7137.65 101 NIFTY 14474 22May2014 FRESH 50 7350.75 101 NIFTY 18359 29May2014 COVER -50 7234.3 (50*7137.65+50*7350.75)/(50+50) 101 NIFTY 18026 05Jun2014 FRESH 50 7479.75 101 NIFTY 464 06Jun2014 FRESH 50 7528.75 101 NIFTY 20830 18Jun2014 COVER -100 7554.475 (50*7479.75+50*7528.75)/(50+50) 101 NIFTY 12253 19Jun2014 COVER -50 7530.1 (50*7479.75+50*7528.75+50*7137.65+50*7350.75)/(50+50+50+50) 101 NIFTY 16690 22Jul2014 FRESH 100 7768.4 101 NIFTY 7164 23Jul2014 FRESH 100 7800 101 NIFTY 16070 24Jul2014 FRESH 50 7834.1 101 NIFTY 11726 30Jul2014 COVER -250 7722.9 (100*7768.4+100*7800+50*7834.1) Regards Sandeep Gupta</description>
      <pubDate>Thu, 24 Sep 2015 11:17:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227050#M40879</guid>
      <dc:creator>Sandeep_Gupta</dc:creator>
      <dc:date>2015-09-24T11:17:31Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227054#M40881</link>
      <description>&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ACCOUNT_NO&lt;/TD&gt;&lt;TD&gt;STOCK_CODE&lt;/TD&gt;&lt;TD&gt;ORDER_REF&lt;/TD&gt;&lt;TD&gt;TRADE_DATE&lt;/TD&gt;&lt;TD&gt;FLAG&lt;/TD&gt;&lt;TD&gt;QTY&lt;/TD&gt;&lt;TD&gt;PRICE&lt;/TD&gt;&lt;TD&gt;required_price&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;7622&lt;/TD&gt;&lt;TD&gt;13May2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7137.65&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;14474&lt;/TD&gt;&lt;TD&gt;22May2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7350.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;18359&lt;/TD&gt;&lt;TD&gt;29May2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-50&lt;/TD&gt;&lt;TD&gt;7234.3&lt;/TD&gt;&lt;TD&gt;(50*7137.65+50*7350.75)/(50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;18026&lt;/TD&gt;&lt;TD&gt;05Jun2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7479.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;464&lt;/TD&gt;&lt;TD&gt;06Jun2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7528.75&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;20830&lt;/TD&gt;&lt;TD&gt;18Jun2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-100&lt;/TD&gt;&lt;TD&gt;7554.475&lt;/TD&gt;&lt;TD&gt;(50*7479.75+50*7528.75)/(50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;12253&lt;/TD&gt;&lt;TD&gt;19Jun2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-50&lt;/TD&gt;&lt;TD&gt;7530.1&lt;/TD&gt;&lt;TD&gt;(50*7479.75+50*7528.75+50*7137.65+50*7350.75)/(50+50=50+50)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;16690&lt;/TD&gt;&lt;TD&gt;22Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;7768.4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;7164&lt;/TD&gt;&lt;TD&gt;23Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;7800&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;16070&lt;/TD&gt;&lt;TD&gt;24Jul2014&lt;/TD&gt;&lt;TD&gt;FRESH&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;7834.1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;101&lt;/TD&gt;&lt;TD&gt;NIFTY&lt;/TD&gt;&lt;TD&gt;11726&lt;/TD&gt;&lt;TD&gt;30Jul2014&lt;/TD&gt;&lt;TD&gt;COVER&lt;/TD&gt;&lt;TD&gt;-250&lt;/TD&gt;&lt;TD&gt;7722.9&lt;/TD&gt;&lt;TD&gt;(100*7768.4+100*7800+50*7834.1)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Thu, 24 Sep 2015 12:00:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227054#M40881</guid>
      <dc:creator>Sandeep_Gupta</dc:creator>
      <dc:date>2015-09-24T12:00:19Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227057#M40883</link>
      <description>&lt;P&gt;Sorry, what is the question. &amp;nbsp;You seem to have it all there. &amp;nbsp;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain inter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; inter=qty*price;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if flag="COVER" then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; required_price=inter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; inter=.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This will get you some of the way, however I don't see why the Cover in the 7th row should have all that formula, maybe as it follows another cover row, if so then just update the logic above:&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain inter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if flag="COVER" and lag(flag) ne "COVER then inter=.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; inter=qty*price;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if flag="COVER" then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; required_price=inter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2015 12:22:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227057#M40883</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2015-09-24T12:22:06Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227062#M40885</link>
      <description>&lt;P&gt;It looks like you are leaving out some important information.&amp;nbsp; Why does the first and second cover have two fresh calculations a piece but the third has 4 and the 4th has 3?&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2015 13:36:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227062#M40885</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2015-09-24T13:36:57Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227100#M40889</link>
      <description>&lt;P&gt;It appears that you have two heirarchies of data. I would consider adding a variable that defines which group is being looked&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2015 15:30:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227100#M40889</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2015-09-24T15:30:25Z</dc:date>
    </item>
    <item>
      <title>Re: Calculating average return price of a stock</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227450#M40984</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want &amp;nbsp;to put weighted average price in front of cover. On 29may the required price will be weighted average of price on 13th and 22nd may2015.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Sandeep&lt;/P&gt;</description>
      <pubDate>Mon, 28 Sep 2015 04:40:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculating-average-return-price-of-a-stock/m-p/227450#M40984</guid>
      <dc:creator>Sandeep_Gupta</dc:creator>
      <dc:date>2015-09-28T04:40:47Z</dc:date>
    </item>
  </channel>
</rss>

